public ActionResult Create(Reference refer, string TagsValue) { using (var db = new TagRefContext()) { if (db.References.FirstOrDefault(w => w.Title == refer.Title) == null) { List <Tag> tmp = new List <Tag>(); foreach (var item in TagsValue.Split(',')) { Tag tg = db.Tags.FirstOrDefault(w => w.Text == item); if (tg == null) { tg = new Tag() { Text = item }; db.Tags.Add(tg); } tmp.Add(tg); } refer.Tags = tmp; db.References.Add(refer); db.SaveChanges(); } } return(RedirectToAction("Index")); }
public ActionResult Edit(Reference tmp, string TagsValue) { List <Tag> tags = new List <Tag>(); using (var db = new TagRefContext()) { var refer = db.References.Find(tmp.Id); refer.Tags.ToList().ForEach(tag => refer.Tags.Remove(tag)); foreach (var item in TagsValue.Split(',')) { Tag tg = db.Tags.FirstOrDefault(w => w.Text == item); if (tg == null) { tg = new Tag() { Text = item }; db.Tags.Add(tg); } tags.Add(tg); } tags.ForEach(w => refer.Tags.Add(w)); db.SaveChanges(); } return(RedirectToAction("Index")); }
public ActionResult Delete(int id) { using (var db = new TagRefContext()) { Reference b = db.References.Find(id); if (b != null) { db.References.Remove(b); db.SaveChanges(); } return(RedirectToAction("Index")); } }