Пример #1
0
        public Form1()
        {
            InitializeComponent();
            var mod = Mod.FromPath(SpringPath, hta);

            using (var db = new DatabaseDataContext()) {

                var game = db.Games.Where(x => x.Shortcut == ImportGameName).Single();

                foreach (var ud in mod.Units) if (IsValid(ud))
                {
                    if (ud.Description == null || ud.Name == null || ud.FullName == null || ud.Description == null) throw new Exception("field is null");
                    var u = game.Units.Where(x => x.Code == ud.Name).SingleOrDefault();
                    if (u == null) u = new Unit() {GameID = game.GameID};
                    u.Code = ud.Name;
                    u.Name = ud.FullName;
                    u.Description = ud.Description;
                    if (ud.Parent != null) u.ParentCode = ud.Parent.Name;
                    if (u.UnitID == 0) db.Units.InsertOnSubmit(u); 
                    db.SubmitChanges();
                }

                foreach (var u in game.Units) {
                    if (!mod.Units.Any(x=>x.Name == u.Code && IsValid(x))) {
                        db.Units.DeleteOnSubmit(u);
                    }
                }

                db.SubmitChanges();


            }

            MessageBox.Show("success");
        }
 partial void DeleteUnit(Unit instance);
 partial void UpdateUnit(Unit instance);
 partial void InsertUnit(Unit instance);
		private void detach_Units(Unit entity)
		{
			this.SendPropertyChanging();
			entity.Model = null;
		}
		private void attach_Units(Unit entity)
		{
			this.SendPropertyChanging();
			entity.Model = this;
		}