asp.net mvc-我如何将WCF引用与MVC3(剃刀)模型一起使用



我有一个WCF ServiceMVC3(剃须刀)网站。我所有的数据都来自WCF Service。我有我的控制器和视图,但是,如何使用具有此结构的模型?

现在,我用DataController从服务中调用我的方法,并在Controllers中调用它们。。

更好的解决方案?

是否要从模型访问WCF服务?哎哟

坚持控制器。控制器与服务交互,而模型则不然。

1.您创建了对服务的web引用,实体是根据服务数据契约生成的。这个实体就是你的模型。

2.如果你需要用一些ASP.NET MVC特定的属性来装饰它——你可以创建具有相同属性的其他实体,创建从服务中获取数据并将其转换为你的实体的存储库,并且只提供所需的方法——这是一个很好的做法。

3.此外,如果你做了一些转换并有了一些业务规则,你可以创建业务逻辑类,调用存储库方法,检查和执行业务规则。但如果只显示来自服务的数据,就不要创建逻辑业务类。

4.您从控制器调用您的逻辑/存储库方法,并将其传递给视图。视图只负责显示模型,从不从中调用服务

更好的解决方案-创建服务和存储库类。例如,如果您获得了Person模型,那么创建PersonRepository类将完成与调用wcf服务和获取数据相关的所有工作。PersonService类将充当业务逻辑容器,当需要存储库中的一些数据时,它将引用Repository类。在这种情况下,您的模型、业务逻辑和wcf服务存储库之间会有很大的松散耦合。PersonService类将充当验证器、业务逻辑容器等

最新更新