private void ExecuteAddCommand() { var view = new AddRuleView(); view.Show(); Messenger.Default.Send(new NotificationMessageAction <WebRuleItem>(null, item => { DatabaseHelper.Open(); var row = DatabaseHelper.InsertOrIgnore <WebRuleItem>( "Name , Url , CatalogBegin , CatalogEnd , ChapterBegin , ChapterEnd , Replace , AuthorBegin , AuthorEnd , DescriptionBegin , DescriptionEnd , CoverBegin , CoverEnd", "@Name , @Url , @CatalogBegin , @CatalogEnd , @ChapterBegin , @ChapterEnd , @Replace , @AuthorBegin , @AuthorEnd , @DescriptionBegin , @DescriptionEnd , @CoverBegin , @CoverEnd", new SQLiteParameter("@Name", item.Name), new SQLiteParameter("@Url", item.Url), new SQLiteParameter("@CatalogBegin", item.CatalogBegin), new SQLiteParameter("@CatalogEnd", item.CatalogEnd), new SQLiteParameter("@ChapterBegin", item.ChapterBegin), new SQLiteParameter("@ChapterEnd", item.ChapterEnd), new SQLiteParameter("@Replace", item.Replace), new SQLiteParameter("@AuthorBegin", item.AuthorBegin), new SQLiteParameter("@AuthorEnd", item.AuthorEnd), new SQLiteParameter("@DescriptionBegin", item.DescriptionBegin), new SQLiteParameter("@DescriptionEnd", item.DescriptionEnd), new SQLiteParameter("@CoverBegin", item.CoverBegin), new SQLiteParameter("@CoverEnd", item.CoverEnd)); DatabaseHelper.Close(); if (row > 0) { RulesList.Add(item); view.Close(); } }), "rule"); }
private void ExecuteEditCommand(int index) { if (index < 0 || index >= RulesList.Count) { return; } var view = new AddRuleView(); view.Show(); Messenger.Default.Send(new NotificationMessageAction <WebRuleItem>(RulesList[index], null, item => { item.Id = RulesList[index].Id; DatabaseHelper.Open(); var row = DatabaseHelper.InsertOrIgnore <WebRuleItem>( "Name = @Name, Url = @Url, CatalogBegin = @CatalogBegin, CatalogEnd = @CatalogEnd, ChapterBegin = @ChapterBegin, ChapterEnd = @ChapterEnd, Replace = @Replace, AuthorBegin = @AuthorBegin, AuthorEnd = @AuthorEnd, DescriptionBegin = @DescriptionBegin, DescriptionEnd = @DescriptionEnd, CoverBegin = @CoverBegin, CoverEnd = @CoverEnd", $"Id = {item.Id}", new SQLiteParameter("@Name", item.Name), new SQLiteParameter("@Url", item.Url), new SQLiteParameter("@CatalogBegin", item.CatalogBegin), new SQLiteParameter("@CatalogEnd", item.CatalogEnd), new SQLiteParameter("@ChapterBegin", item.ChapterBegin), new SQLiteParameter("@ChapterEnd", item.ChapterEnd), new SQLiteParameter("@Replace", item.Replace), new SQLiteParameter("@AuthorBegin", item.AuthorBegin), new SQLiteParameter("@AuthorEnd", item.AuthorEnd), new SQLiteParameter("@DescriptionBegin", item.DescriptionBegin), new SQLiteParameter("@DescriptionEnd", item.DescriptionEnd), new SQLiteParameter("@CoverBegin", item.CoverBegin), new SQLiteParameter("@CoverEnd", item.CoverEnd)); DatabaseHelper.Close(); if (row > 0) { RulesList[index] = item; } view.Close(); }), "rule"); }