2

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

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

请注意,我仅限于 .NET 3.5 并且不能使用 .NET 4.0(因此不能在 .NET 4.0 中使用 System.Web.Routing)

4

3 回答 3

2

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

不幸的是,如果不使用 Rewrite 模块,目前还没有办法做到这一点。MS 有一个团队正在研究 WCF REST Starter Kit,可在此处查看如何实现此功能。

在我今年早些时候就该主题所做的 Microsoft DevDays 演示中,Ron Jacobs 确认只有在 Framework 4.0 及更高版本中才能执行此操作,并且对于重写模块以下的任何内容都是唯一的方法。

于 2009-12-08T07:54:07.353 回答
1

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

http://www.codeplex.com/IIRF

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

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

于 2009-12-08T08:00:25.127 回答
0

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

于 2010-02-09T16:19:38.557 回答