2012-10-28 329 views
0

我有一个“小”企业应用程序,aspnet mvc 3 +实体框架与POCO实体和存储库模式。我的结构在4个项目的解决方案:Asp.net mvc,实体框架,Poco - 架构

  1. POCO实体
  2. 领域模型
  3. 服务
  4. Web应用程序

当应用程序对数据库执行查询,使用的一个提供的服务,该服务使用存储库和小类,结果我有一些动态代理对象,我想在我的域实体中进行转换,然后在mvc视图中使用它们,但我不知道如何。 Dovrebber被设置为翻译员?

这种方法是否合理?

+1

我通常会做的是创建“ViewModel”类,它们代表将传递到我的视图中的数据。如果您有输入表单或其他元数据,这些类可以具有验证属性。正如@ekolis所建议的那样,您可以使用AutoMapper或者手动将POCO实体映射到您的ViewModel类。这对我来说也是一些必要的时间,因为有时我的POCO实体有循环引用,并迫使我翻译成不同的类。 – Makotosan

回答

0

AutoMapper便于将对象从一种类型转换为另一种类型。如果所有目标类型属性都具有相应的命名源类型属性,并且可以使用lambda表达式轻松地手动映射任何不匹配的属性,它通常会“做正确的事情”。