Esempio n. 1
0
        /// <summary>
        /// Uppdaterar befintlig eller lägger till en ny betydelse.
        /// </summary>
        protected void btnUpdateMeaning_Click(object sender, EventArgs e)
        {
            //kontrollerar igen om berörda kontroller är validerade.
            if (IsValid)
            {
                var meaning = new Meaning()
                {
                    Word = txtWord.Text,
                    Comment = txtWordComment.Text,
                };

                if (ddlPageWordType.SelectedIndex > -1)
                {
                    meaning.WTypeId = Convert.ToByte(ddlPageWordType.SelectedItem.Value);
                }

                if (lstMeaning.SelectedIndex > -1)
                {
                    meaning.MeaningId = Convert.ToInt16(lstMeaning.SelectedItem.Value);
                }

                ICollection<ValidationResult> validationResults;
                if (!meaning.Validate(out validationResults))
                {
                    foreach (var v in validationResults)
                    {
                        ModelState.AddModelError("", v.ErrorMessage);
                    }
                }
                else
                {
                    try
                    {
                        Service.SaveOrUpdateMeaning(meaning);
                        if (meaning.MeaningId == 0)
                        {
                            successMessage = String.Format("Den nya betydelsen {0} har sparats.", meaning.Word);
                        }
                        else
                        {
                            successMessage = String.Format("Betydelsen {0} har uppdaterats.", meaning.Word);
                        }
                    }
                    catch
                    {
                        ModelState.AddModelError("", String.Format("Sparandet eller uppdateringen av {0} misslyckades.", meaning.Word));
                    }
                }
            }
            else
            {
                //Visa inte ModelErrors om det finns PageErrors...
                ModelState.Clear();
                //default för pnlErrorBox är display: none,
                //så den måste visas om page innehåller Page-valideringsfel
                pnlErrorBox.Style["display"] = "block";
            }
        }
Esempio n. 2
0
 /// <summary>
 /// Sparar nytt eller uppdaterar befintligt Meaning-objekt.
 /// Nytt om Meaning-objektets egenskap MeaningId är 0, annars uppdatera.
 /// </summary>
 /// <param name="meaning">Meaning-objektet</param>
 public void SaveOrUpdateMeaning(Meaning meaning)
 {
     if (meaning.MeaningId > 0)
     {
         BlissKomDAL.UpdateMeaning(meaning);
     }
     else
     {
         BlissKomDAL.InsertMeaning(meaning);
     }
 }