2013-03-05 21 views
2

我是WCF和MVC世界的新手。目前我有一个MVC3 ASP应用程序和一个WCF服务应用程序暴露一些服务。我想从MVC3 ASP应用程序访问此服务。正如我所知,这可以通过将服务引用添加到ASP项目或通过从WCF服务生成代理类并将代理类添加到ASP应用程序来完成。在ASP MVC3中使用WCF服务的最佳方式应用程序

我的问题:这是我正确的方式(如上所述)。如果是的话哪种方法更好(添加服务引用或生成代理类并手动添加)?

+0

如果您希望遵守SOA(面向服务的体系结构),请按照WCF服务生成代理类和存根代码的方式进行操作......添加服务引用是种银子弹方法 – dakait 2013-03-05 06:28:45

+0

我推荐Channel工厂。请参阅相关的主题[1] [1] [这里]:http://stackoverflow.com/questions/1698275/wcf-channelfactory-vs-generating-proxy – 2013-03-06 02:07:11

+0

我推荐通道工厂。请参阅相关的主题[1] [1] [这里]:http://stackoverflow.com/questions/1698275/wcf-channelfactory-vs-generating-proxy – 2013-03-06 02:08:23

回答

1

使用添加服务引用要容易得多。添加服务引用基本上意味着您要求Visual Studio执行您如果使用默认设置手动生成它的工作。 如果你没有任何理由不走更简单的方法,那么我的建议是使用添加服务引用。

+0

感谢您的答复。我想知道,如果您要选择其他方式(通过手动添加代理类);那么你会在MVC3 ASP应用程序中添加代理类?它在控制器内部吗? – 2013-03-05 06:10:31

+1

这取决于您的应用程序的大小以及您拥有的其他程序集。您必须将代理类添加到要调用它的程序集中,或者从您调用它的程序集中为其所在的程序集添加引用。 – 2013-03-05 06:40:48

+0

实际上,我正在通过ASP UI单击按钮来调用该wcf服务。所以它的点击将被发布到控制器方法。内部控制器我可以使用代理和调用wcf服务。那么将代理类直接添加到控制器是一种好方法吗?因为我只是有一个代理的.cs文件而不是一个可以引用它的文件。 – 2013-03-05 08:00:22

相关问题