我有MVC 3网络应用程序,我从DB获取记录,用于呈现页面元素并填充不同的部分视图。
我有代表这些DB对象(服务层)的类。
我还有一组独立的类,它们将控制器返回的模型保存到视图中。
在我的控制器中,我查询返回对象的DB以表示DB记录。
然后我将DB Object转移(MAP)到表示视图使用的模型的对象
这些类很大,我必须在控制器中编写大量代码才能映射。
在大多数情况下,我只有一些不同的属性。
执行此映射似乎还有很多工作要做。大量代码进行映射
这就是我要问的原因。
这是在MVC框架中开发的正确设计方法吗?
如果不是,那么你是否有一些指导概述了这方面的最佳实践。
答案 0 :(得分:2)
Model或ViewModel应该只包含View使用的信息。在某些情况下,这几乎与从数据库中获取的对象相同,但情况并非总是如此。将这些问题分开是有好处的,原因有很多,超出了stackoverflow答案的范围。另外,我希望您有一个单独的数据访问层,而不是直接从控制器查询数据库,实体框架或服务,只是为了将这些问题分开。
答案 1 :(得分:1)