And*_*Gis 10 .net c# asp.net-mvc wcf asp.net-mvc-4
我在MVC4中有一个Web应用程序.我将主持一个共享的托管服务提供商.我想用WCF服务扩展它以上传文件.(WPF桌面应用程序将允许用户直接从他们的PC上传文件.)
我宁愿以某种方式"一起"托管它以避免存储目录的读/写访问问题,但我不知道如何做到这一点.
我应该在MVC应用程序中托管WCF作为自我主机吗?
我应该将WCF服务作为应用程序还是类库?
如何将它与MVC应用程序结合在一起?
And*_*Gis 14
我终于找到了如何让它发挥作用.
在你的MVC应用程序Web.config中添加:
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>
</system.serviceModel>
Run Code Online (Sandbox Code Playgroud)
在您的路由中配置---> Global.asax或App_Start/RoutesConfig(取决于MVC版本)添加:
public static void RegisterRoutes(RouteCollection routes)
{
...
routes.Add(new ServiceRoute("hello", new ServiceHostFactory(), typeof(YourServiceClass)));
...
}
Run Code Online (Sandbox Code Playgroud)
就是这样.现在,您的服务显示在localhost/hello下或您部署应用程序的任何位置.
这默认使用BasicHttpBinging.如果您需要其他,则必须实现自己的ServiceHostFactory.根据我的观察,此方法仅适用于HTTP绑定.当我尝试添加NetTcpBinding时失败了.
归档时间: |
|
查看次数: |
14777 次 |
最近记录: |