2012-05-14 44 views
0

我在MVC3 Web應用程序中託管WCF服務。我有一個帶有UriTemplate的WebGet屬性的方法設置。當UriTemplate包含句點時,我從Web服務器收到404響應。帶有句點的UriTemplate在MVC應用程序中返回404

[OperationContract, WebGet(UriTemplate = "DoSomething")] 
    Stream DoWork(); 

http://localhost/Services/Service1.svc/DoSomething - Works Correctly 

    [OperationContract, WebGet(UriTemplate = "dummyfile.xml")] 
    Stream DoWork(); 

http://localhost/Services/Service1.svc/dummyfile.xml - Returns a 404 error 

我猜測它與路線有關,但我不確定。我已經設置了正確的航線現在:

routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 
    routes.IgnoreRoute("{resource}.svc/{*pathInfo}"); 

    routes.MapRoute("Default", "{controller}/{action}/{id}", new { controller = "Home", action = "Index", id = UrlParameter.Optional }); 

任何人都可以提供一些洞察我怎麼能在使用URITemplate在這一個時期MVC3應用主機WCF服務?

+2

菲爾哈克有【答案】(http://haacked.com/archive/2010/04/29/allowing-reserved-filenames-in -URLs.aspx) – EdSF

+0

@EdSF你爲什麼不添加該評論作爲答案,以便他可以同意你:) – Mirko

+0

@Mirko - 好吧,只是沒有... – EdSF

回答

0

在抄襲:) 菲爾哈克的風險has the answer

+0

謝謝。這絕對是問題的一部分。此外,ASP.Net開發服務器不喜歡在URL中有句點時。 –

相關問題