【问题标题】:REST friendly WCF Endpoints in .NET 3.5.NET 3.5 中 REST 友好的 WCF 端点
【发布时间】:2009-12-08 07:49:36
【问题描述】:

我想通过避免使用 .svc 来使用我的 WCF 服务端点创建 REST 友好的 URL。我知道我可以通过使用 IIS 重写模块来附加 .svc 来完成此操作。

还有其他人知道更好的方法吗?

请注意,我仅限于 .NET 3.5,无法使用 .NET 4.0(因此无法在 .NET 4.0 中使用 System.Web.Routing)

【问题讨论】:

  • 在您的 URL 中包含“.svc”与使其对 REST 友好无关。它可能看起来更好,但与它的(非)“RESTfullness”无关。

标签: .net wcf url rest endpoints


【解决方案1】:

不再支持 WCF REST Starter Kit,建议的升级路径使用 ASP.Net Web API,它是 ASP.Net MVC 4.0 的一部分,可以在 here 找到

不幸的是,如果不使用 Rewrite 模块,目前还没有办法做到这一点。 MS 有一个团队正在开发 WCF REST Starter Kit here,他们正在寻找实现此功能的地方。

在我今年早些时候就该主题所做的 Microsoft DevDays 演示中,得到 Ron Jacobs 的确认,该功能仅在 Framework 4.0 及更高版本中可用,并且对于重写模块以下的任何内容是唯一的方法这样做。

【讨论】:

    【解决方案2】:

    您可以将 ISAPI 重写模块“插入”到 IIS 中,为您执行此操作,例如 Ionic:

    http://www.codeplex.com/IIRF

    您也可以早在 .NET 1.1 中编写自己的 HTTP 重写引擎 - 尽管这需要有一个可以映射到使用 ASP.NET 引擎的文件扩展名,因为它仅在 IIS 将请求传递到 . NET - 但它可以是您选择的任何扩展。

    对于您的问题,ISAPI 重写模块是最好的解决方案。

    【讨论】:

      【解决方案3】:

      WCF Contrib library(我还没用过)声称有能力做到这一点。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-05-13
        • 1970-01-01
        • 1970-01-01
        • 2010-09-16
        • 2011-07-29
        相关资源
        最近更新 更多