我將舊的非MVC代碼集成到MVC 4項目中。舊代碼的WCF服務的根目錄和API子文件夾中的.SVC擴展名受基本認證。在MVC中調用WCF服務時找不到HTTP資源
首先,向所有SVC文件發佈諸如(http://mysite/myservice.svc/DoCommand)的404錯誤。然後,我添加這樣的:
routes.IgnoreRoute( 「{allsvc}」,新的{allsvc = @ 「 .SVC(/.*)。?」});
現在可以調用站點根目錄下的SVC文件。但是,在API子文件夾中的文件SVC現在回到這個:
<Error>
<Message>
No HTTP resource was found that matches the request URI 'http://mysite/API/myservice.svc/DoCommand'.
</Message>
</Error>
如果我不包括DoCommand,然後我得到的標準WCF信息屏幕。
哦,最後,這隻發生在產品開發中,與本地主機相反,一切正常。
非常感謝您的幫助。謝謝。
沒有工作。 http://mysite/myservice.svc/DoCommand工作; http://mysite/API/myservice.svc/DoCommand不起作用,所以這是某種路由問題。 – user1044169
你可以發佈你的路線? – Mightymuke
而這就是它令人困惑的地方。在RouteConfig.cs中我有routes.IgnoreRoute(「{* allsvc}」,新{allsvc = @「。* \。svc(/.*)?」});,所以我想MVC忽略所有對SVC文件的請求。那麼,MVC之外的哪些配置會路由到SVC文件?我不知道在哪裏可以找到。 – user1044169