2009-10-26 135 views
3

我想添加一個WCF服務到我現有的ASP.NET MVC的Web應用程序,但與WCF測試客戶端應用程序,我不斷得到HTTP 404到URL .svc文件。添加WCF服務到ASP.NET MVC項目

當我將新的WCF服務添加到項目中時,它似乎會自動對web.config文件進行一系列更改。我嘗試在global.asax文件中篡改我的路由以忽略.svc文件,看看它是否幫助—它沒有。

我還使用Visual Studio中的編輯器工具編輯了WCF配置設置,以添加基本的http端點。

我只需要我的項目的一小部分WCF服務提供與廣泛使用WCF的另一個系統的集成。

更新:當我在提供的對話框中添加URL http://localhost/LabManagerDev/Development/SoftwareRequests.svc時,以下是WCF Test Client應用程序的一些輸出。

錯誤:無法從http://localhost/LabManagerDev/Development/SoftwareRequests.svc獲取元數據 如果這是您有權訪問的Windows(R)Communication Foundation服務,請檢查是否已在指定地址啓用元數據發佈。有關啓用元數據發佈的幫助,請參閱http://go.microsoft.com/fwlink/?LinkId=65455上的MSDN文檔。 WS元數據交換錯誤 URI:http://localhost/LabManagerDev/Development/SoftwareRequests.svc 元數據中包含的參考不能爲 已解決:'http://localhost/LabManagerDev/Development/SoftwareRequests.svc'。 該HTTP請求未經授權,客戶端身份驗證方案爲「匿名」。從服務器接收到的 身份驗證頭是'Negotiate,NTLM'。 遠程服務器返回錯誤:(401)未經授權。 HTTP GET錯誤 URI:http://localhost/LabManagerDev/Development/SoftwareRequests.svc 下載「http://localhost/LabManagerDev/Development/SoftwareRequests.svc」時發生錯誤。 請求失敗,HTTP狀態404:未找到。

+0

強調以下錯誤字符串:「錯誤:無法獲取元數據」。 – 2010-02-08 15:50:47

回答

0

兩個問題:

  1. 匿名身份驗證需要啓用
  2. WCF模塊沒有用我的IIS7安裝註冊

this site,不得不從位置運行ServiceModelReg -i 「C:\ Windows \ Microsoft.NET \ Framework \ v3.0 \ Windows Communication Foundation」。

0

在全局文件(全局路由配置)中,請確保爲svc文件添加特定的忽略。

+1

我已添加:routes.IgnoreRoute(「Development/SoftwareRequests.svc」);我的global.asax文件,但它沒有幫助。 – jessicah 2009-10-27 20:16:57

+0

@湯姆安德森:從邏輯上講,你的建議應該起作用;但我嘗試了與@jessicah相同的東西,但似乎並不奏效。看起來我需要做別的事情。 – 2010-02-08 15:45:57