我在MVC应用程序中使用实体框架5。
我目前将我的视图直接绑定到使用POCO生成器生成的类型。
这样做有什么风险吗?这是一个糟糕的设计吗?
或者我应该在绑定模型之前将模型转换为视图模型吗?这样做有什么风险吗?
我不这么认为。我能看到的唯一风险是,您可能会失去很多灵活性,并且表示将由域驱动。对域模型的更改将直接影响表示。
是一个糟糕的设计吗?
是的。
或者我应该在绑定模型之前将模型转换为视图模型吗?
是的,你应该定义和使用视图模型。这些类将为您提供对表示层的更多控制。
我经常因为懒惰而开始使用EF类,想着"这次会不一样"。但我不可避免地从中成长,转而使用自定义视图模型类。视图中有太多细微不同的东西,而数据库中却不需要。转换过程并不太痛苦,所以我并不后悔。