使用WCF在.NET 3.5中定义路由

本文关键字:定义 路由 WCF NET 使用 | 更新日期: 2023-09-27 18:00:03

我正试图将.NET 4.0应用程序降级到3.5,但我在定义一条路由时遇到了麻烦:

在4.0中,它看起来是这样的:

RouteTable.Routes.Add(new ServiceRoute("UploaderService", 
          new WebServiceHostFactory(), typeof(UploaderService)));

看起来.NET 3.5没有ServiceRoute对象。我是不是遗漏了一些显而易见的东西?

使用WCF在.NET 3.5中定义路由

3.5中不支持WCF路由-此功能是在4.0中引入的。在3.5中,您必须接受REST服务的"丑陋".svc URI。

因此,对于您提到的路由示例,您可以添加一个名为UploaderService.svc的文件,其中包含以下内容:

<%@ ServiceHost
    Language="C#"
    Debug="true"
    Service="UploaderService" 
    Factory="System.ServiceModel.Activation.WebServiceHostFactory" %>

如果UploaderService不在"命名空间中,请记住使用它的完全限定名称。该文件通常是一个单行文件,我在这里只是为了可读性而对其进行了分解。