public static void Insert(GanttResourceAssignmentModel assignment) { if (!UpdateDatabase) { var first = All().OrderByDescending(a => a.ID).FirstOrDefault(); var id = 0; if (first != null) { id = first.ID; } assignment.ID = id + 1; All().Add(assignment); } else { using (var db = new SampleEntities()) { var entity = assignment.ToEntity(); db.GanttResourceAssignments.AddObject(entity); db.SaveChanges(); } } }
public HttpResponseMessage Put(string fname, ADPFileDb d) { try { using (SampleEntities en = new SampleEntities()) { var entity = en.ADPFileDb.FirstOrDefault(i => i.FileName == fname); if (entity != null) { entity.UserName = d.UserName; entity.Date = d.Date; en.SaveChanges(); return(Request.CreateResponse(HttpStatusCode.Created, entity)); } else { return(Request.CreateErrorResponse(HttpStatusCode.NotFound, "The specified ID does not exist!!!")); } } } catch (Exception e) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, e)); } }
/// <summary> /// Saves the import data. /// </summary> /// <param name="importZipCodes">The import zip codes.</param> /// <exception cref="System.NotImplementedException"></exception> public void SaveImportData(IEnumerable <TaiwanZipCode> importZipCodes) { try { //先砍掉全部資料 using (var db = new SampleEntities()) { foreach (var item in db.TaiwanZipCodes.OrderBy(x => x.ID)) { db.TaiwanZipCodes.Remove(item); } db.SaveChanges(); } //再把匯入的資料給存到資料庫 using (var db = new SampleEntities()) { foreach (var item in importZipCodes) { db.TaiwanZipCodes.Add(item); } db.SaveChanges(); } } catch (Exception ex) { throw; } }
public void TestSimpleAggregate() { var dataSource = SampleEntities.GenerateData().AsQueryable(); var data = dataSource.Take(PageSize).ToList(); Assert.AreEqual(PageSize, data.Count, "Set has 10 items"); var request = new GridDataRequest { Take = PageSize, Skip = 0, Columns = Thing.GetColumnsWithAggregate() }; var response = request.CreateGridDataResponse(dataSource); Assert.AreEqual(data.Count, response.Payload.Count, "Same length"); Assert.AreEqual(data.First().Id, response.Payload.First().First(), "Same first item"); Assert.AreEqual(dataSource.Sum(x => x.Number), response.AggregationPayload["Number"], "Same average number"); Assert.AreEqual(dataSource.Sum(x => x.DecimalNumber), (decimal)response.AggregationPayload["DecimalNumber"], "Same average decimal number"); Assert.AreEqual(dataSource.Max(x => x.Name), response.AggregationPayload["Name"], "Same max name"); Assert.That(dataSource.Min(x => x.Date), Is.EqualTo(response.AggregationPayload["Date"]).Within(10).Seconds, "Same min date"); }
public static void Update(GanttTaskModel task) { if (!UpdateDatabase) { var target = One(e => e.ID == task.ID); if (target != null) { target.Title = task.Title; target.Start = task.Start; target.End = task.End; target.PercentComplete = task.PercentComplete; target.OrderID = task.OrderID; target.ParentID = task.ParentID; target.Summary = task.Summary; target.Expanded = task.Expanded; } } else { using (var db = new SampleEntities()) { var entity = task.ToEntity(); db.GanttTasks.Attach(entity); db.ObjectStateManager.ChangeObjectState(entity, EntityState.Modified); db.SaveChanges(); } } }
public static IList <EmployeeDirectoryModel> All() { var result = HttpContext.Current.Session["EmployeeDirectory"] as IList <EmployeeDirectoryModel>; if (result == null || UpdateDatabase) { using (var db = new SampleEntities()) { result = db.EmployeeDirectory.ToList().Select(employee => new EmployeeDirectoryModel { EmployeeId = employee.EmployeeID, ReportsTo = employee.ReportsTo, FirstName = employee.FirstName, LastName = employee.LastName, HireDate = employee.HireDate, BirthDate = employee.BirthDate, Phone = employee.Phone, Extension = employee.Extension, Address = employee.Address, City = employee.City, Country = employee.Country, Position = employee.Position }).ToList(); } HttpContext.Current.Session["EmployeeDirectory"] = result; } return(result); }
public static void Update(EmployeeDirectoryModel employee) { if (!UpdateDatabase) { var target = One(e => e.EmployeeId == employee.EmployeeId); if (target != null) { target.FirstName = employee.FirstName; target.LastName = employee.LastName; target.Address = employee.Address; target.City = employee.City; target.Country = employee.Country; target.Phone = employee.Phone; target.Extension = employee.Extension; target.BirthDate = employee.BirthDate; target.HireDate = employee.HireDate; target.Position = employee.Position; target.ReportsTo = employee.ReportsTo; } } else { using (var db = new SampleEntities()) { var entity = employee.ToEntity(); db.EmployeeDirectory.Attach(entity); db.ObjectStateManager.ChangeObjectState(entity, EntityState.Modified); db.SaveChanges(); } } }
public void ProcessResponseSubsetTest() { const string filter = "blue"; var dataSource = SampleEntities.GenerateData().AsQueryable(); var filterCount = dataSource.Where(x => x.Color == filter); var data = filterCount.Take(PageSize).ToList(); var request = new GridDataRequest { Take = PageSize, Skip = 0, Columns = Thing.GetColumnsWithColorFilter(filter, CompareOperators.Equals) }; var response = request.CreateGridDataResponse(dataSource, FormatOutput); Assert.AreEqual(data.Count, response.Payload.Count, "Same length"); foreach (var item in response.Payload) { Assert.AreNotEqual(filter, item[4], "Different color"); } foreach (var item in response.Payload) { Assert.AreEqual("darkblue", item[4], "Same color"); } }
public ActionResult AjaxAddOrder(int customerId) { if (ModelState.IsValid) { var context = new SampleEntities(); var customer = context.Customers.Single(c => c.ID == customerId); var order = new Order(); try { UpdateModel(order); customer.Orders.Add(order); context.SaveChanges(); } catch (Exception e) { Response.StatusCode = 500; Response.AppendHeader("message", "There was an issue adding order to customer \"" + customer.FirstName + " " + customer.LastName + "\". Please contact tech support with this message: " + Utility.GetInnermostException(e).Message); } } return(View(new GridModel(GetOrders(customerId)))); }
public static IList <MeetingViewModel> All() { var result = HttpContext.Current.Session["Meetings"] as IList <MeetingViewModel>; if (result == null || UpdateDatabase) { using (var db = new SampleEntities()) { result = db.Meetings.ToList().Select(meeting => new MeetingViewModel { MeetingID = meeting.MeetingID, Title = meeting.Title, Start = DateTime.SpecifyKind(meeting.Start, DateTimeKind.Utc), End = DateTime.SpecifyKind(meeting.End, DateTimeKind.Utc), StartTimezone = meeting.StartTimezone, EndTimezone = meeting.EndTimezone, Description = meeting.Description, IsAllDay = meeting.IsAllDay, RoomID = meeting.RoomID, RecurrenceRule = meeting.RecurrenceRule, RecurrenceException = meeting.RecurrenceException, RecurrenceID = meeting.RecurrenceID, Attendees = meeting.MeetingAttendees.Select(m => m.AttendeeID).ToArray() }).ToList(); } HttpContext.Current.Session["Meetings"] = result; } return(result); }
public static void Insert(GanttTaskModel task) { if (!UpdateDatabase) { var first = All().OrderByDescending(e => e.ID).FirstOrDefault(); var id = 0; if (first != null) { id = first.ID; } task.ID = id + 1; All().Insert(0, task); } else { using (var db = new SampleEntities()) { var entity = task.ToEntity(); db.GanttTasks.AddObject(entity); db.SaveChanges(); task.ID = entity.ID; } } }
public static void Update(TaskViewModel task) { if (!UpdateDatabase) { var target = One(e => e.TaskID == task.TaskID); if (target != null) { target.Title = task.Title; target.Description = task.Description; target.IsAllDay = task.IsAllDay; target.RecurrenceRule = task.RecurrenceRule; target.RecurrenceException = task.RecurrenceException; target.RecurrenceID = task.RecurrenceID; target.OwnerID = task.OwnerID; target.StartTimezone = task.StartTimezone; target.EndTimezone = task.EndTimezone; target.Start = task.Start; target.End = task.End; } } else { using (var db = new SampleEntities()) { var entity = task.ToEntity(); db.Tasks.Attach(entity); db.ObjectStateManager.ChangeObjectState(entity, EntityState.Modified); db.SaveChanges(); } } }
public static IList <TaskViewModel> All() { var result = HttpContext.Current.Session["Tasks"] as IList <TaskViewModel>; if (result == null || UpdateDatabase) { using (var db = new SampleEntities()) { result = db.Tasks.ToList().Select(task => new TaskViewModel { TaskID = task.TaskID, Title = task.Title, Start = DateTime.SpecifyKind(task.Start, DateTimeKind.Utc), End = DateTime.SpecifyKind(task.End, DateTimeKind.Utc), StartTimezone = task.StartTimezone, EndTimezone = task.EndTimezone, Description = task.Description, IsAllDay = task.IsAllDay, RecurrenceRule = task.RecurrenceRule, RecurrenceException = task.RecurrenceException, RecurrenceID = task.RecurrenceID, OwnerID = task.OwnerID }).ToList(); } HttpContext.Current.Session["Tasks"] = result; } return(result); }
public static void Update(GanttDependencyModel dependency) { if (!UpdateDatabase) { var target = One(e => e.ID == dependency.ID); if (target != null) { target.Type = dependency.Type; target.PredecessorID = dependency.PredecessorID; target.SuccessorID = dependency.SuccessorID; } } else { using (var db = new SampleEntities()) { var entity = dependency.ToEntity(); db.GanttDependencies.Attach(entity); db.ObjectStateManager.ChangeObjectState(entity, EntityState.Modified); db.SaveChanges(); } } }
public tblEmployee Get(int id) { using (SampleEntities entities = new SampleEntities()) { return(entities.tblEmployees.FirstOrDefault(e => e.Id == id)); } }
public ActionResult AjaxDeleteCustomer(int customerId) { try { var context = new SampleEntities(); var customer = context.Customers.Single(c => c.ID == customerId); bool orders = customer.Orders.Any(); if (orders) { Response.StatusCode = 500; Response.AppendHeader("message", "This customer has order history, and cannot be deleted until all orders are deleted."); } else { context.Customers.DeleteObject(customer); context.SaveChanges(); } } catch (System.Exception e) { Response.StatusCode = 500; Response.AppendHeader("message", "There was an issue deleting this customer. Please contact tech support with this message: " + Utility.GetInnermostException(e).Message); } return(View(new GridModel(GetCustomers()))); }
public JsonResult GetCountries(string selectedCity, string selectedCountry, string selectedTitle) { var northwind = new SampleEntities(); IQueryable <CustomerViewModel> countries = northwind.Customers.Select(c => new CustomerViewModel { City = c.City, Country = c.Country, ContactTitle = c.ContactTitle }); if (!string.IsNullOrEmpty(selectedCity)) { countries = countries.Where(c => c.City.Equals(selectedCity)); } if (!string.IsNullOrEmpty(selectedCountry)) { countries = countries.Where(c => c.Country.Equals(selectedCountry)); } if (!string.IsNullOrEmpty(selectedTitle)) { countries = countries.Where(c => c.ContactTitle.Equals(selectedTitle)); } return(Json(countries.ToList().DistinctBy(d => d.Country).OrderBy(d => d.Country), JsonRequestBehavior.AllowGet)); }
public ActionResult Products_Update([DataSourceRequest] DataSourceRequest request, ProductViewModel product) { if (ModelState.IsValid) { using (var northwind = new SampleEntities()) { // Create a new Product entity and set its properties from the posted ProductViewModel. var entity = new Product { ProductID = product.ProductID, ProductName = product.ProductName, UnitsInStock = product.UnitsInStock }; // Attach the entity. northwind.Products.Attach(entity); // Change its state to Modified so Entity Framework can update the existing product instead of creating a new one. northwind.Entry(entity).State = EntityState.Modified; // Or use ObjectStateManager if using a previous version of Entity Framework. // northwind.ObjectStateManager.ChangeObjectState(entity, EntityState.Modified); // Update the entity in the database. northwind.SaveChanges(); } } // Return the updated product. Also return any validation errors. return(Json(new[] { product }.ToDataSourceResult(request, ModelState), JsonRequestBehavior.AllowGet)); }
public static void Insert(EmployeeDirectoryModel employee) { if (!UpdateDatabase) { var first = All().OrderByDescending(e => e.EmployeeId).FirstOrDefault(); var id = 0; if (first != null) { id = first.EmployeeId; } employee.EmployeeId = id + 1; All().Insert(0, employee); } else { using (var db = new SampleEntities()) { var entity = employee.ToEntity(); db.EmployeeDirectory.AddObject(entity); db.SaveChanges(); employee.EmployeeId = entity.EmployeeID; } } }
public ActionResult Products_Destroy([DataSourceRequest] DataSourceRequest request, ProductViewModel product) { if (ModelState.IsValid) { using (var northwind = new SampleEntities()) { // Create a new Product entity and set its properties from the posted ProductViewModel. var entity = new Product { ProductID = product.ProductID, ProductName = product.ProductName, UnitsInStock = product.UnitsInStock }; // Attach the entity. northwind.Products.Attach(entity); // Delete the entity. northwind.Products.Remove(entity); // Or use DeleteObject if using a previous versoin of Entity Framework. // northwind.Products.DeleteObject(entity); // Delete the entity in the database. northwind.SaveChanges(); } } // Return the removed product. Also return any validation errors. return(Json(new[] { product }.ToDataSourceResult(request, ModelState), JsonRequestBehavior.AllowGet)); }
private static void SimpleListTest(bool ignoreTimezone, int page = 1, int setSize = 445) { var dataSource = SampleEntities.GenerateData(setSize).AsQueryable(); var data = dataSource.Skip(PageSize * page).Take(PageSize).ToList(); const int timezoneOffset = 300; if (PageSize * page + PageSize < setSize) { Assert.AreEqual(data.Count, PageSize, "Set has 10 items"); } var request = new GridDataRequest { Take = PageSize, Skip = PageSize * page, Columns = Thing.GetColumns(), TimezoneOffset = timezoneOffset }; var response = request.CreateGridDataResponse(dataSource); Assert.AreEqual(page + 1, response.CurrentPage); Assert.AreEqual(data.Count, response.Payload.Count, "Same length"); Assert.AreEqual(data.First().Id, response.Payload.First().First(), "Same first item"); Assert.That( ignoreTimezone ? data.First().Date : data.First().Date.AddMinutes(-timezoneOffset), Is.EqualTo(response.Payload.First()[2]).Within(10).Seconds, "Same date at first item"); Assert.AreEqual(dataSource.Count(), response.TotalRecordCount, "Total rows matching"); }
public override Task OnConnected() { var name = Context.User.Identity.Name; using (var db = new SampleEntities()) { var user = db.UserSet .SingleOrDefault(u => u.UserName == name); if (user == null) { user = new User { UserName = name, Connection = new List <Connection>() }; db.UserSet.Add(user); } user.Connection.Add(new Connection { ConnectionId = Context.ConnectionId, Connected = true }); db.SaveChanges(); } return(base.OnConnected()); }
public void TestMultipleAggregate() { var dataSource = SampleEntities.GenerateData().AsQueryable(); var data = dataSource.Take(PageSize).ToList(); Assert.AreEqual(PageSize, data.Count, "Set has 10 items"); var request = new GridDataRequest { Take = PageSize, Skip = 0, Columns = Thing.GetColumnsWithMultipleCounts() }; var response = request.CreateGridDataResponse(dataSource); Assert.AreEqual(data.Count, response.Payload.Count, "Same length"); Assert.AreEqual(data.First().Id, response.Payload.First().First(), "Same first item"); Assert.AreEqual(dataSource.Select(x => x.Id).Distinct().Count(), (int)response.AggregationPayload["Id"], "Id same distinct count"); Assert.AreEqual(dataSource.Select(x => x.Number).Distinct().Count(), (int)response.AggregationPayload["Number"], "Number same distinct count"); Assert.AreEqual(dataSource.Select(x => x.DecimalNumber).Distinct().Count(), (int)response.AggregationPayload["DecimalNumber"], "DecimalNumber same distinct count"); Assert.AreEqual(dataSource.Select(x => x.Name).Distinct().Count(), (int)response.AggregationPayload["Name"], "Name same distinct count"); Assert.AreEqual(dataSource.Select(x => x.Date).Distinct().Count(), (int)response.AggregationPayload["Date"], "Date same distinct count"); Assert.AreEqual(dataSource.Select(x => x.IsShipped).Distinct().Count(), (int)response.AggregationPayload["IsShipped"], "IsShipped same distinct count"); }
public void Update(ProductViewModel product, string who) { using (var db = new SampleEntities()) { var user = db.UserSet.Find(who); if (user == null) { Clients.Caller.showErrorMessage("Could not find that user."); } else { db.Entry(user) .Collection(u => u.Connection) .Query() .Where(c => c.Connected == true) .Load(); if (user.Connection == null) { Clients.Caller.showErrorMessage("The user is no longer connected."); } else { foreach (var connection in user.Connection) { Clients.Client(connection.ConnectionId) .update(product); } } } } }
public static IList <GanttTaskModel> All() { var result = HttpContext.Current.Session["GanttTasks"] as IList <GanttTaskModel>; if (result == null || UpdateDatabase) { using (SampleEntities context = new SampleEntities()) { result = context.GanttTasks.ToList() .Select(p => new GanttTaskModel { ID = p.ID, Title = p.Title, OrderID = p.OrderID, ParentID = p.ParentID, Start = p.Start, End = p.End, PercentComplete = p.PercentComplete, Summary = p.Summary, Expanded = p.Expanded }) .ToList(); } HttpContext.Current.Session["GanttTasks"] = result; } return(result); }
public static void Update(OrgChartConnection connection) { if (!UpdateDatabase) { var target = One(e => e.Id == connection.Id); if (target != null) { target.FromShapeId = connection.FromShapeId; target.ToShapeId = connection.ToShapeId; target.Text = connection.Text; target.FromPointX = connection.FromPointX; target.FromPointY = connection.FromPointY; target.ToPointX = connection.ToPointX; target.ToPointY = connection.ToPointY; } } else { using (var db = new SampleEntities()) { db.OrgChartConnections.Attach(connection); db.ObjectStateManager.ChangeObjectState(connection, EntityState.Modified); db.SaveChanges(); } } }
public HttpResponseMessage Delete(int id) { try { using (SampleEntities en = new SampleEntities()) { var entity = en.ADPFileDb.FirstOrDefault(i => i.Id == id); if (entity != null) { File.Delete(entity.Location); en.ADPFileDb.Remove(entity); en.SaveChanges(); return(Request.CreateResponse(HttpStatusCode.OK, entity)); } else { return(Request.CreateErrorResponse(HttpStatusCode.NotFound, "The specified ID does not exist!!!")); } } } catch (Exception e) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, e)); } }
public IEnumerable <tblEmployee> Get() { using (SampleEntities entities = new SampleEntities()) { return(entities.tblEmployees.ToList()); } }
public static void Insert(OrgChartShape shape) { if (!UpdateDatabase) { var first = All().OrderByDescending(e => e.Id).FirstOrDefault(); var id = 0; if (first != null) { id = first.Id; } shape.Id = id + 1; All().Insert(0, shape); } else { using (var db = new SampleEntities()) { db.OrgChartShapes.AddObject(shape); db.SaveChanges(); } } }
/// <summary> /// テストデータ削除 /// </summary> public void RemoveTestData() { using (SampleEntities sampleEntities = new SampleEntities()) { Console.WriteLine(Environment.NewLine); Console.WriteLine("データの削除"); // エリア情報取得 // 子要素を取得しなくても、リレーションデータの削除を確認。 MArea area = sampleEntities.Areas.FirstOrDefault(); //.Include(a => a.Shops) // .ThenInclude(shop => shop.SalesDailies) //.Include(a => a.Shops) // .ThenInclude(shop => shop.SalesMonthlies) // .FirstOrDefault(); // 削除データの確認 this.OutputObject(area); // 削除 sampleEntities.Remove(area); // 削除内容の保存 sampleEntities.SaveChanges(); } }