使用WCF数据协定作为MVC视图的模型

时间:2013-08-02 09:00:44

标签: wcf asp.net-mvc-4 n-tier-architecture

我已经开始研究一个结构如下的应用程序:

UI - ASP.Net MVC Web应用程序 服务层 - WCF 实体 - 一个简单的类库(由WCF层公开) 数据层 - 用于数据库交互。

到目前为止,我在我的Web应用程序的Models文件夹中定义了我的模型,但现在我们决定通过WCF服务公开它们(因为这个应用程序也会被其他应用程序使用),我需要一些帮助。

我尝试将所有模型定义放在由WCF服务公开的实体层中,并使用数据注释和DataContract属性进行装饰。现在,我可以引用这些实体将它们与我的视图绑定。但是,数据注释验证对我不起作用。

有人可以帮我解决这个问题吗?我一直在通过网络搜索解决方案,但几乎所有人都告诉我在Web应用程序中添加实体层的引用,这将是我们不想要的紧密耦合。另一个选择是在我的Web应用程序的models文件夹中重新定义所有带有数据注释的实体,这将是重复的编码类型。

有没有更好的方法呢?任何帮助表示赞赏。

更新

为了使用WCF实体,我在我的Web应用程序中添加了一个服务引用。现在,只是通过使用[Required]属性显式地修改我的数据成员来检查我修改了Reference.cs文件,它工作正常。但是,我知道每当生成服务代码时,这些更改都会消失。

我有什么办法可以在这里引入Data annotation属性吗?请帮助。

1 个答案:

答案 0 :(得分:0)

至于我这是个坏主意,转让的DTO,MVC的模型。

看起来像是类似的问题