我找到的关于如何设置 ASP.NET MVC 项目的大多数(几乎全部?)示例都是直接在控制器中访问数据库上下文。
像这样的例子:
public class MoviesController : Controller
{
private MovieDBContext db = new MovieDBContext();
//
// GET: /Movies/
public ViewResult Index()
{
return View(db.Movies.ToList());
}
我也知道有很多控件(至少对于aspx视图引擎)可以直接绑定到数据库中的一个表作为数据源,让它自动显示数据。
对我来说,这感觉很奇怪,我想在表示层和数据库之间进行某种分离。在视图中使用它们之前,将数据从数据库映射到视图模型的某种业务层和/或数据层。只是我还是这些例子都是这样的,因为它更容易做到?我错过了一些巨大的收获吗?我想它有点快,但感觉就像我不应该在我的数据库中使用与我的视图中相同的模型。我终于找到了一个感觉更正确的示例,其中数据库模型与视图模型分离。但这是一百个例子。
您对此有何看法?