// DELETE api/values/5 public void Delete(int id) { using (var cnt = new MvContext()) { var item = cnt.Items.Where(t => t.Id == id).SingleOrDefault(); if (item != null) { cnt.Items.Remove(item); cnt.SaveChanges(); } } }
public dynamic Put(int id, MvItemInput input) { if (ModelState.IsValid && input != null) { using (var cnt = new MvContext()) { var item = cnt.Items.Include("Values").Where(t => t.Id == id).SingleOrDefault(); if (item != null) { item.Modified = DateTime.Now; var inputValues = input.Values.Where(t => t.Id > 0).ToDictionary(t => t.Id, t => t); foreach (var value in item.Values.Where(t => inputValues.ContainsKey(t.Id)).ToArray()) { var inputValue = inputValues[value.Id]; value.StringValue = inputValue.StringValue; value.IntValue = inputValue.IntValue; value.DateValue = inputValue.DateValue; value.OptionId = inputValue.OptionId; value.Modified = DateTime.Now; } var removeValues = item.Values.Where(t => !inputValues.ContainsKey(t.Id)).ToArray(); foreach (var value in removeValues) { cnt.Values.Remove(value); } var newValues = input.Values.Where(t => t.Id == 0).Select(t => new MvValue() { FieldId = t.FieldId, StringValue = t.StringValue, DateValue = t.DateValue, IntValue = t.IntValue, OptionId = t.OptionId, Modified = DateTime.Now }).ToArray(); foreach (var value in newValues) { item.Values.Add(value); } cnt.SaveChanges(); return(new { Id = item.Id }); } } } return(new { }); }
public dynamic Put(int id, MvOptionInput input) { if (ModelState.IsValid && input != null) { using (var cnt = new MvContext()) { var item = cnt.Options.Where(t => t.Id == id).SingleOrDefault(); if (item != null) { item.Title = input.Title; item.Order = input.Order; item.Modified = DateTime.Now; cnt.SaveChanges(); return(new { Id = item.Id }); } } } return(new { }); }
public dynamic Post(int fieldId, MvOptionInput input) { if (ModelState.IsValid && input != null) { using (var cnt = new MvContext()) { if (cnt.Fields.Any(t => t.Id == fieldId)) { var item = new MvOption() { FieldId = fieldId, Title = input.Title, Order = input.Order, Modified = DateTime.Now }; cnt.Options.Add(item); cnt.SaveChanges(); return(new { Id = item.Id }); } } } return(new { }); }
// POST api/values public dynamic Post(int listId, MvFieldInput input) { if (ModelState.IsValid && input != null) { using (var cnt = new MvContext()) { if (cnt.Lists.Any(t => t.Id == listId)) { var field = new MvField() { ListId = listId, Format = (int)input.Format, IsRequired = input.IsRequired, Title = input.Title, Order = input.Order, Modified = DateTime.Now }; cnt.Fields.Add(field); cnt.SaveChanges(); return(new { Id = field.Id }); } } } return(new { }); }
public dynamic Post(MvListInput input) { if (ModelState.IsValid && input != null) { using (var cnt = new MvContext()) { var item = cnt.Lists.Where(t => t.Id == input.Id).SingleOrDefault(); if (item == null) { item = new MvList(); cnt.Lists.Add(item); } item.Title = input.Title; item.Modified = DateTime.Now; cnt.SaveChanges(); return(new { Id = item.Id }); } } return(new { }); }
// POST api/values public dynamic Post(int listId, MvItemInput input) { if (ModelState.IsValid && input != null) { using (var cnt = new MvContext()) { if (cnt.Lists.Any(t => t.Id == listId)) { var values = input.Values.Select(t => new MvValue() { FieldId = t.FieldId, StringValue = t.StringValue, DateValue = t.DateValue, IntValue = t.IntValue, OptionId = t.OptionId, Modified = DateTime.Now }).ToList(); var item = new MvItem() { ListId = listId, Values = values, Modified = DateTime.Now }; cnt.Items.Add(item); cnt.SaveChanges(); return(new { Id = item.Id }); } } } return(new { }); }