【发布时间】:2011-11-29 16:55:36
【问题描述】:
我搜索了很多托管WCF 的方法并发现它们可以工作,但是,在我的解决方案中我有WCF Service Project(它有一个web.config 和一些连接字符串)和一个ASPX.NET项目(它也有一个web.config),任何人都可以澄清我如何在网站上托管它们。
谢谢。
【问题讨论】:
标签: asp.net web-hosting wcf-hosting
我搜索了很多托管WCF 的方法并发现它们可以工作,但是,在我的解决方案中我有WCF Service Project(它有一个web.config 和一些连接字符串)和一个ASPX.NET项目(它也有一个web.config),任何人都可以澄清我如何在网站上托管它们。
谢谢。
【问题讨论】:
标签: asp.net web-hosting wcf-hosting
您希望任何其他客户端访问此 WCF 服务吗?
如果没有,只需在现有 Web 应用程序中保留一个 .svc 文件,并在需要时使用它。
如果是,请将 WCF 项目作为网站托管在 IIS、控制台或 WAS 中,并从您的 aspx Web 应用程序中引用它。
【讨论】:
对于托管 WCF 服务,您有以下选项:
See here for more information on hosting a WCF service.
对于托管 Asp.Net 应用程序,我建议使用 IIS,see here for how。但是,使用 WSE 也可以将其作为 Windows 服务托管。 See here for how.
【讨论】:
很简单,您只需将“.svc”文件添加到您的 ASPX.net 项目中。例如服务1.svc
然后将以下代码添加到文件中
<%@ ServiceHost Language="C#" Service="WCFServiceProject.Main" %>
WCFServiceProject.Main 是提供服务功能的类的完全限定命名空间和名称
如果您还没有注册,您还需要在 IIS 中注册 svc 扩展以使其工作。并且不要忘记将 WCF 服务项目的引用添加到 aspx.net 项目中。
如果您想动态创建服务,请查看我的问题以获取一些提示Creating wcf service within IIS in code
只需重新阅读更新(编辑)的问题。您需要将连接详细信息从 WCF 服务项目复制到您的 asp.net 项目中。
【讨论】: