我正在将LinqtoSQL用于WPF MV-VM应用程序,因为我可能希望将来从LinqtoSql更改为其他内容,例如Entity框架或Subsonic等,因此我发现存储库模式很有帮助,

我的问题是我如何创建模型类,假设我在数据库中有一个表,我明白我不能使用LINQtoSQL生成的Class作为模型类,如果我这样做,那么我将依赖于LinqtoSQL,哪个会破坏我实现存储库模式的独立性,这是否意味着我需要为所有实体类创建自己的自定义类?

有帮助吗?

解决方案

好主,不。你为什么要这样对自己?

你已经在你的ViewModel中复制了这么多,你为什么要添加另一层复制以获得如此少的收益,特别是考虑到L2S可以使用普通的'clr类型?

我认为我的服务合同从WCF服务和ORM类型到 我的模型。仅仅因为它不存在于* .Model命名空间中并不意味着什么。

如果您觉得需要这个润滑层,请将该图层作为您的ViewModel。这就是他们的目的。

其他提示

是的,这意味着您需要为所有实体类实现自己的自定义类。这是一种痛苦,但那是现状。

请参阅这个SO回答有关该主题的更多信息,以及一些可能的补救措施。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top