public Categoria Create(Categoria Categoria) { db.Categorias.Add(Categoria); db.SaveChanges(); return Categoria; }
public Categoria Create(string login, string password, Categoria Categoria) { LogBLL log = new LogBLL(); try { User u = new User(); u.Login = login; u.Password = password; u = Authentication.Login(u); log.log.UserId = u.UserId; Authentication.HaveAccess(u); Categoria = controller.Create(Categoria); } catch (Exception e) { log.log.Exception = e.Message; throw e; } finally { log.Create(); } return Categoria; }
public bool Edit(Categoria Categoria) { return CategoriaModel.Edit(Categoria); }
public static bool Edit(Categoria Categoria) { ArrecebaDLLDb db = new ArrecebaDLLDb(); HashSet<Categoria> Subcategorias = Categoria.SubCategorias; Categoria.SubCategorias = null; db.Entry(Categoria).State = EntityState.Modified; if (Subcategorias != null) { foreach (Categoria Subcategoria in Subcategorias) { if (Subcategoria.CategoriaId > 0) { if (!String.IsNullOrWhiteSpace(Subcategoria.Nome)) db.Entry(Subcategoria).State = EntityState.Modified; else { db.Categorias.Attach(Subcategoria); db.Categorias.Remove(Subcategoria); } } else { if (!String.IsNullOrWhiteSpace(Subcategoria.Nome)) db.Categorias.Add(Subcategoria); } } } return db.SaveChanges() > 0; }
public static Categoria[] ListSubcategoriasAndPreferences(int UserId) { ArrecebaDLLDb db = new ArrecebaDLLDb(); var query = from c in db.Categorias join sc in db.Categorias on c.CategoriaId equals sc.SuperCategoriaId into Subcategoria where Subcategoria.Count() == 0 orderby c.Nome select new { Categoria = c, UserId = (from ai in db.AndroidClients where ai.UserId == UserId where ai.Interesses.Contains(c) select ai.UserId).FirstOrDefault() }; Categoria[] Categorias = new Categoria[query.Count()]; int i = 0; foreach (var x in query) { Categorias[i] = x.Categoria; Categorias[i].Checked = x.UserId > 0; i++; } return Categorias; }
public static Categoria[] List() { ArrecebaDLLDb db = new ArrecebaDLLDb(); var query = from c in db.Categorias join sc in db.Categorias on c.CategoriaId equals sc.SuperCategoriaId into Subcategoria from sc in Subcategoria.DefaultIfEmpty() where c.SuperCategoriaId == null orderby c.CategoriaId select new { Categoria = c, Subcategoria = sc }; List<Categoria> List = new List<Categoria>(); Categoria Categoria = null; int CategoriaId_Atual = 0; foreach (var item in query) { if (CategoriaId_Atual != item.Categoria.CategoriaId) { if (Categoria != null) { List.Add(Categoria); } CategoriaId_Atual = item.Categoria.CategoriaId; Categoria = new Categoria(); Categoria.CategoriaId = item.Categoria.CategoriaId; Categoria.Nome = item.Categoria.Nome; Categoria.SubCategorias = new HashSet<Categoria>(); } if (item.Subcategoria != null) { Categoria Subcategoria = new Categoria(); Subcategoria.CategoriaId = item.Subcategoria.CategoriaId; Subcategoria.Nome = item.Subcategoria.Nome; Categoria.SubCategorias.Add(Subcategoria); } } if (Categoria != null) { List.Add(Categoria); } return List.ToArray(); }
public static Categoria Find(int id) { ArrecebaDLLDb db = new ArrecebaDLLDb(); var query = from c in db.Categorias join sc in db.Categorias on c.CategoriaId equals sc.SuperCategoriaId into Subcategoria from sc in Subcategoria.DefaultIfEmpty() where c.CategoriaId == id select new { Categoria = c, Subcategoria = sc }; Categoria Categoria = new Categoria(); bool first = true; foreach (var item in query) { if (first) { Categoria.CategoriaId = item.Categoria.CategoriaId; Categoria.Nome = item.Categoria.Nome; Categoria.SubCategorias = new HashSet<Categoria>(); first = false; } if (item.Subcategoria != null) { Categoria Subcategoria = new Categoria(); Subcategoria.CategoriaId = item.Subcategoria.CategoriaId; Subcategoria.Nome = item.Subcategoria.Nome; Categoria.SubCategorias.Add(Subcategoria); } } return Categoria; }