Пример #1
0
        public void SaveStringConstants()
        {
            var toBeDeleted = new List <DataModel.StringConstant>();

            foreach (var StringConstant in initialStringConstantList)
            {
                var match = StringConstantList.FirstOrDefault(p => p.Id == StringConstant.Id);
                if (match == null)
                {
                    toBeDeleted.Add(StringConstant);
                }
            }

            using (var conn = DBHandler.Connection())
            {
                conn.Open();
                using (var t = conn.BeginTransaction())
                {
                    toBeDeleted.ForEach(p => p.Delete(conn, t));
                    foreach (var StringConstant in StringConstantList)
                    {
                        // Do not save empty text.
                        if (string.IsNullOrWhiteSpace(StringConstant.Text))
                        {
                            if (StringConstant.Id != null)
                            {
                                StringConstant.Delete(conn, t);                            // Also remove those existing and empty.
                            }
                        }
                        else
                        {
                            StringConstant.Save(conn, t);
                        }
                    }
                    t.Commit();
                }
            }

            Refresh();
        }
Пример #2
0
 public void RemoveStringConstantFromList(DataModel.StringConstant StringConstant)
 {
     StringConstantList.Remove(StringConstant);
 }