2009-12-08 58 views
2

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

是否有其他人知道更好的方法来做到这一点?

请注意,我仅限于.NET 3.5不能使用.NET 4.0(所以不能用System.Web.Routing在.NET 4.0中)

+0

在URL中有一个“.svc”与使其对REST友好无关。它可能看起来更好,但与它的(非)“RESTfullness”无关。 – Oli 2010-11-12 21:36:57

回答

2

的WCF REST入门套件不再支持和建议的升级路径使用ASP.Net的Web API,它是ASP.Net MVC 4.0的一部分,可以发现here

遗憾的是不使用重写模块therre目前还没有这样做的方式。 MS上有一个团队正在致力于WCF REST入门工具包here谁谁在实施此功能。

在我今年早些时候做的关于该主题的Microsoft DevDays演示文稿中,得到了Ron Jacobs的确认,这样做的能力只能在Framework 4.0以上版本中使用,并且对于重写模块以下的任何内容是唯一方法去做这个。

1

可以“插入”一个ISAPI重写模块,IIS会为你做这个,如离子:

http://www.codeplex.com/IIRF

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

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