private void DeleteButton_Click(object sender, RoutedEventArgs e)
        {
            CategoryDataModel item = (CategoryDataModel)((Button)sender).DataContext;

            ViewModel.DeleteCategory(item);
            UpdateFrame();
        }
        private void CategoriesList_ItemClick(object sender, ItemClickEventArgs e)
        {
            var listViewItem       = CategoriesList.ContainerFromItem(e.ClickedItem) as ListViewItem;
            CategoryDataModel item = (CategoryDataModel)listViewItem.Content;

            ViewModel.ChoosedCategory = item;
            UpdateFrame();
        }
 public void AddCategory(CategoryDataModel _category)
 {
     using (DataContext db = new DataContext())
     {
         db.Categories.Add(_category);
         db.SaveChanges();
     }
     Categories.Add(_category);
 }
        /// <summary>
        ///     Checks the database if a given category exists. If not, it is added to the database. Otherwise, it is returned from
        ///     the database.
        /// </summary>
        /// <param name="category">The category.</param>
        /// <returns>
        ///     The category data model.
        /// </returns>
        public async Task <CategoryDataModel> GetOrAdd(CategoryDataModel category)
        {
            using (var context = new DatabaseContext())
            {
                if (await Exists(category.Name))
                {
                    return(await GetCategory(category.Name));
                }

                return(await AddCategory(category));
            }
        }
        /// <summary>
        ///     Adds the given category.
        /// </summary>
        /// <param name="category">The category.</param>
        /// <returns>The newly added category.</returns>
        private async Task <CategoryDataModel> AddCategory(CategoryDataModel category)
        {
            using (var context = new DatabaseContext())
            {
                category.Id           = Guid.NewGuid();
                category.CreationTime = DateTime.Now;

                var addedModel = context.Categories.Add(category);

                var rowsChanged = await context.SaveChangesAsync();

                return(rowsChanged > 0 ? addedModel : null);
            }
        }
 public void DeleteCategory(CategoryDataModel _category)
 {
     using (DataContext db = new DataContext())
     {
         db.Categories.Remove(_category);
         db.SaveChanges();
     }
     if (_category == ChoosedCategory)
     {
         Categories.Remove(_category);
         ChoosedCategory = Categories[0];
     }
     else
     {
         Categories.Remove(_category);
     }
 }
 public void EditeCategory(CategoryDataModel _category)
 {
 }
示例#8
0
        public static void GetWordpressResourcesSqlImportScript()
        {
            try
            {
                string fileName = Path.Combine(Directory.GetCurrentDirectory(), "ImportFiles", "json", "new", "resources.json");
                List <ResourceDataModel> resources  = JsonConvert.DeserializeObject <List <ResourceDataModel> >(File.ReadAllText(fileName));
                List <CategoryDataModel> categories = CategoryDataService.GetCategoryData();


                StringBuilder sb = new StringBuilder("INSERT INTO Resources (name, Description, ImageUrl, Address,  CategoryId) VALUES ");

                foreach (var resource in resources)
                {
                    sb.Append("(");
                    sb.Append($"'{resource.Title.Rendered.Replace("'", "''")}',");
                    sb.Append($"'{resource.Content.Rendered.Replace("'", "''")}',");
                    sb.Append($"'{resource.Acf.ResourceIconImage}',");
                    sb.Append($"'{resource.Acf.Address.Replace("'", "''")}',");
                    string categoryName = resource.Acf.Category.Trim();

                    CategoryDataModel category = categories.FirstOrDefault(x => x.Name == categoryName);

                    if (category != null)
                    {
                        sb.Append($"{category.Id})");
                    }
                    else
                    {
                        int categoryId = categories.First(x => x.Name == "").Id;
                        sb.Append($"{categoryId})");
                    }

                    if (resource != resources.Last())
                    {
                        sb.Append(",");
                    }
                }

                string fileDir = Path.Combine(Directory.GetCurrentDirectory(), "ImportFiles", "json", "output");

                if (!Directory.Exists(fileDir))
                {
                    Directory.CreateDirectory(fileDir);
                }


                fileName = $"{DateTime.Now:yyyy-MM-dd}_ResourceSql.txt";

                string filePath = Path.Combine(fileDir, fileName);

                using (FileStream catFile = File.Create(filePath))
                {
                    byte[] sbBytes = Encoding.ASCII.GetBytes(sb.ToString());
                    catFile.Write(sbBytes);
                }
            }
            catch (Exception e)
            {
                throw e;
            }
        }
        private void AddCategorieButton_Click(object sender, RoutedEventArgs e)
        {
            CategoryDataModel newCategory = new CategoryDataModel();

            ViewModel.AddCategory(newCategory);
        }