数据访问类库所以我有什么从我的LINQ返回查询实体
我做一个LINQ到实体调用
我结束了一个单行有我的资料表对象。
我应该从我的类库方法返回什么?
我认为这将是很酷的返回TableData对象,但我看到,如果您对其进行更改并调用一个保存,它实际上更新数据库,我不想在我的类库之外。
人们通常返回什么作为他们的结果对象?
数据访问类库所以我有什么从我的LINQ返回查询实体
我做一个LINQ到实体调用
我结束了一个单行有我的资料表对象。
我应该从我的类库方法返回什么?
我认为这将是很酷的返回TableData对象,但我看到,如果您对其进行更改并调用一个保存,它实际上更新数据库,我不想在我的类库之外。
人们通常返回什么作为他们的结果对象?
如果将EF跟踪对象的状态设置为Detached
,则更改将不会传播到数据库。
如果您试图遵循n层架构,我的建议是使用自我追踪实体T4模板。
然后,您的模型将成为您想从存储库返回的内容,并且在您要将它们留存至数据库时,会跟踪您对实体所做的更改。
这是一个伟大的问题,因为我真的指出了担忧的分离。一方面,您希望将“原生”数据返回考试或其他任何方面。但另一方面,你可能不需要所有的'实时数据包袱'。
我认为这是数据传输对象可以发挥作用的地方。我甚至已经为定义具有只读属性的DTO的接口。 '我回来'是由我所要求的--IDTO,DTO或逻辑实体定义的,因为某些业务层对象可以使用DTO。
我不使用EF,而是在我们自己的ORM-ish DAL中,这正是它的工作原理 - 工厂和服务是通用的,并返回所要求的内容。不想担心编辑?询问没有任何可写属性的接口。