服务路由表在IIS7中工作但不在IIS6中工作?

时间:2010-09-14 21:45:44

标签: wcf iis-7 routing .net-4.0 iis-6

我有一个使用Global.asax文件来激活我的服务的WCF服务。因此,我在部署框上部署的虚拟目录看起来像

的web.config Global.asax中   - 包含Services.dll和Services.pdb

Services.dll是我的Service.svc和Service.svc.cs文件的已编译位。

如何在IIS6中使用此设置?我的Global.asax看起来像:

public class Global : HttpApplication
{
    void Application_Start(object sender, EventArgs e)
    {
        RegisterRoutes();
    }

    private void RegisterRoutes()
    {
        WebServiceHostFactory factory = new WebServiceHostFactory();
        RouteTable.Routes.Add(new ServiceRoute("MyService", factory, typeof(MyService)));
    }
}

有什么想法吗?这适用于IIS7,以便我可以导航到http://server/MyService/ ...

1 个答案:

答案 0 :(得分:0)

AFAIK不幸的是,在IIS6中,您需要决定使用的扩展名,以便您的网址为http://server/MyService.extension。然后,您需要在IIS6中注册该扩展,以便由ASP.NET处理。

我们使用.mvc,因此我们的网址看起来像http://server/MyService.mvc。我们很快就会转向IIS7,所以我们暂时坚持这样做,所以可能有更好的方法。