2010-02-16 142 views
1

我的RESTful WCF Web服務似乎打破了自己,如果我把它放一會兒吧!我可以讓我的個人電腦保持一切正常工作,當我通過一個簡單的URL請求返回並測試服務時,它會爲我提供.svc文件供下載,而不是在服務器上啓動請求!IIS提供.svc文件供下載,而不是在服務器上執行它!

此WCF服務位於根目錄下自己的IIS應用程序文件夾中。我可以通過在Visual Studio中打開IIS子文件夾來刪除web.config文件,然後再次添加該服務。

我的第一個想法是,.svc的HTTP處理程序映射已被borked,因此我重新運行ServiceModelReg.exe -i,但這並沒有解決問題。

查看此IIS應用程序的處理程序映射,它們看起來是正確的並且從Web根目錄繼承。值得一提的是,這個網站還有另一個應用程序文件夾,它運行.svc文件中的WCF服務,並且仍然正常運行。

現在我已經檢查了顯然我有點在哪裏看下一個flumoxed!希望有人建議...

回答

0

嗯,我也終於想出解決辦法。只是一個奇怪的IE/IIS怪癖。我正在通過將我的REST URI放入IE的地址欄進行測試,並期望在所有工作都能看到一頁JSON。這是服務第一次使用時會發生的情況。在進一步的嘗試IE會提供下載名爲'FooService.svc'的文件,其中包含我的JSON數據 - 我從來沒有被提供下載我的服務器端svc文件。

何嗡嗡聲,電腦eh。不能與「時間生活,...

0

退房這篇文章讓你的擴展正確映射:

IIS Hosted Service Fails

編輯:你主持你的應用程序的服務?也許你的應用程序池被掛起?

+0

感謝您的建議,使用文章我可以確認擴展映射正確。 – 2010-02-17 00:28:13

+0

不,我在IIS中託管(v7.5) – 2010-02-17 08:47:41

2

嘗試

轉到程序和功能,然後打開或關閉Windows功能。

Microsoft.net Framework 3.5.1。

確保兩個選項都選中

Windows通信基礎HTTP激活

Windows通訊基礎非HTTP激活

希望這有助於。

+0

這兩個選項都未選中,所以我啓用了它們,但是,它不幸解決了這個問題。 – 2010-02-17 12:51:19

3

您正在運行IIS6或IIS7嗎?什麼.NET版本?

IIS6: http://blog.stevensanderson.com/2008/07/04/options-for-deploying-aspnet-mvc-to-iis-6/

IIS7: 測試此: 「%WINDIR%\ Microsoft.NET \框架\ 3.0 \ Windows通信基礎\ ServiceModelReg.exe」 -r -y

你真的需要其他網址中的.svc-extension嗎?

這可能會解決這個問題: http://west-wind.com/weblog/posts/570695.aspx

+0

感謝您的鏈接,我確實希望在服務啓動並運行後刪除我的.svc擴展。我確實設置了URL重寫,但是,它沒有什麼區別。我非常RESTful的URI在第一次成功訪問後仍然提供了用於下載的.svc文件。 – 2010-02-28 22:44:55

0

啓用IIS 7

用於連接應用程序池32位運行它解決了我的問題。

相關問題