public static void Initialize(BugsContext context) { if (!context.Improvements.Any() || !context.Statuses.Any()) { Status st = new Status { Name = "New" }; Status st2 = new Status { Name = "Process" }; Status st3 = new Status { Name = "Solved" }; context.Statuses.AddRange(st, st2, st3); context.SaveChanges(); Improvement imp = new Improvement { Name = "TestSolveTask", Description = "testing" }; imp.Statuses.Add(st); imp.Statuses.Add(st3); imp.CurrentStatus = st.Name; Improvement imp2 = new Improvement { Name = "SecondTestSolveTask", Description = "testing2" }; imp2.Statuses.Add(st); imp2.Statuses.Add(st2); imp2.Statuses.Add(st3); imp2.CurrentStatus = st.Name; context.Improvements.AddRange(imp, imp2); context.SaveChanges(); } }
private int saveBug(Exception ex, string comments = null) { Bug bug = new Bug { Category = ex.GetType().ToString(), Description = ex.Message, FilePath = filePath, Source = ex.Source, StackTrace = ex.StackTrace?.ToString(), Url = url, ReportedBy = reportedBy, ErrorCode = errorCode, AuditDetail = new AuditDetail { CreatedEntryUserID = reportedBy } }; if (comments != null) { bug.Comments = comments; } db.Bugs.Add(bug); db.SaveChanges(); if (ex.InnerException != null) { saveBug(ex.InnerException); } return(1); }
public async Task <IActionResult> Create(Improvement improvement, string statuses) { var _imp = improvement; //_imp.Statuses.Clear(); //получаем список всех статусов в БД для сравнения и обновления if (!(statuses == null)) { var existingStatuses = db.Statuses.Select(s => s.Name); char[] delimiterChars = { ' ', ',', '.', ':', ';' }; foreach (string ss in statuses.Split(delimiterChars, StringSplitOptions.RemoveEmptyEntries)) { //если указанный статус в БД уже есть, то связываем задачу и статус if (existingStatuses.Contains(ss)) { Status _st = db.Statuses.Single(s => s.Name == ss); _imp.Statuses.Add(_st); //выбрать статус в бд. добавить к задаче. } //иначе создаем статус, записываем в бд, связываем с задачей. else { Status _st = new Status { Name = ss }; db.Statuses.Add(_st); db.SaveChanges(); _imp.Statuses.Add(_st); //создать объект статус. добавить в бд. добавить к задаче. обновить бд } } } db.Improvements.Add(_imp); await db.SaveChangesAsync(); return(RedirectToAction("Index")); }
public IActionResult Create(BugModel bugModel) { _context.Bugs.Add(bugModel); _context.SaveChanges(); return(Ok(_context.Bugs.Find(bugModel.Id))); }