我试图在ASP中实现一个简单的CRUD操作的小应用程序。NET MVC4与实体框架。我应该如何为这个实体实现它:
public class UserProfile
{
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int UserId { get; set; }
public string UserName { get; set; }
public virtual Role UserRole { get; set; }
public virtual Employee Employee { get; set; }
}
我应该再做一个这样的模型吗?
public class User
{
public int UserId { get; set; }
public string UserName { get; set; }
public int RoleId { get; set; }
public int EmployeeId { get; set; }
}
并将其用于添加和编辑视图?还是有更好的办法?我可以为这些视图使用UserProfile类吗?
您只需要创建一个类来实现CRUD。
在你的控制器中(或者为了更好的抽象,在服务层中),你调用DbContext来添加、编辑、删除或选择你的实体。
看这里:http://www.asp.net/mvc/tutorials/getting-started-with-ef-5-using-mvc-4/implementing-basic-crud-functionality-with-the-entity-framework-in-asp-net-mvc-application
下面是一个简单的例子,添加一个具有类别的电影:
[HttpPost]
public ActionResult CreateMovie(string Title, string Category)
{
Movie m = new Movie();
m.Title = Title;
if (Category != "" && Category != null)
{
m.Category = _context.Categorys.First(c => c.Id == Int32.Parse(Category));
}
_context.Movies.Add(m);
_context.SaveChanges();
return RedirectToAction("Index");
}