我想构建一个基本的wpf/mvvm应用程序,通过WCF从服务器获取数据,并允许客户端显示/操作(具有CRUD操作)此数据。
到目前为止,我考虑的架构如下:
- 一个“全局”模型层,实现验证、研究标准和INotifyPropertyChanged和服务合同。 - 一些服务层,主要是针对实体框架4个实现模型层的合同,使我能够访问和操作数据。 - 注意,我还想拥有离线数据源,比如XML或其他东西,所以我计划使用一些DI/IoC来实现另一个服务。 - WCF层 - 客户端数据存储的额外层? - ViewModel
我清楚Views/ViewModel部分,但我在理解模型、WCF和ViewModel之间的关系方面遇到了麻烦。
我的问题是:
1. 我应该如何处理由EF生成的模型?放弃它并采用代码优先方法,手动对数据库进行映射吗?
2. 对于WCF数据传输,我应该在模型中使用关系属性,即Product有一个客户,而不是一个CustomerId吗?
3. 我是否应该在WCF和ViewModel之间增加一个额外的层,用于存储和操作数据,或者直接将ViewModel插入WCF是最佳实践?
欢迎提供此类架构的任何其他提示...
到目前为止,我考虑的架构如下:
- 一个“全局”模型层,实现验证、研究标准和INotifyPropertyChanged和服务合同。 - 一些服务层,主要是针对实体框架4个实现模型层的合同,使我能够访问和操作数据。 - 注意,我还想拥有离线数据源,比如XML或其他东西,所以我计划使用一些DI/IoC来实现另一个服务。 - WCF层 - 客户端数据存储的额外层? - ViewModel
我清楚Views/ViewModel部分,但我在理解模型、WCF和ViewModel之间的关系方面遇到了麻烦。
我的问题是:
1. 我应该如何处理由EF生成的模型?放弃它并采用代码优先方法,手动对数据库进行映射吗?
2. 对于WCF数据传输,我应该在模型中使用关系属性,即Product有一个客户,而不是一个CustomerId吗?
3. 我是否应该在WCF和ViewModel之间增加一个额外的层,用于存储和操作数据,或者直接将ViewModel插入WCF是最佳实践?
欢迎提供此类架构的任何其他提示...