假设我有一个包含大量字段的表,并为其生成了一个EF实体。假设我想显示这个实体的编辑表单,但是有一个额外的字段不能直接映射到表格。
所以我创建了一个模型类,它继承了我的实体类和我的字段。到现在为止还挺好。
问题在于,现在我必须在返回视图时将每个字段从实体对象复制到模型对象,而在保存数据时则相反。当然有一种更清洁的方法可以做到这一点吗?
具体示例是用户管理表单,额外的字段是密码和确认密码字段,这些字段存储在Membership表中。
答案 0 :(得分:1)
最好将用于在应用程序层(如UI)和连接到存储的原始实体之间进行通信的数据传输对象分开。是的,您需要来回复制字段,但有些工具可以帮助您完成此任务,例如AutoMapper。
答案 1 :(得分:1)
您可以创建EF实体partial
(我认为它们通常是默认情况下),然后将该字段添加到一个单独的文件中,该文件对该类也有partial class
。这不像Ilya的回答那么好,但很容易。