[英]Entity FrameWork not responding from a WCF webservice
我創建了WCF Web服務,並且在此Web服務中,我使用EF 6(也嘗試過5)。 該項目可以編譯,並且可以在其他服務器(也可以是2012R2)上完美運行。
在我的應用程序中,我將Web服務設置為創建異步方法。
使用Web服務時,出現與配置文件相關的錯誤(我沒有更改此配置文件中的任何內容),但是稍后我會轉到配置文件。
當我設置一個示例程序並僅調用“ HelloWorld”時,我會收到Hello。
因此,Web服務本身可以運行。
在服務器上時,我創建一個使用相同版本的EF的測試程序。 有用。 所以那沒問題。
但是,當我嘗試將Web服務與使用EF的方法一起使用時,根本不會發生任何事情。 e.result為string.empty,也不會返回錯誤。
web.config文件中的錯誤如何處理。 當我使用原始配置文件發布Web服務時。 嘗試直接從服務器的瀏覽器打開Web服務時出現以下錯誤:
錯誤500.19 Config來源:4:有關Entity Framework配置的更多信息,請訪問http://go.microsoft.com/fwlink/?LinkID=237468 5:
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> </configSections>
顯然,它抱怨名稱部分為EntityFramework。
當我將EntityFramework更改為EntityFramework(因此使用大寫字母E)時,我可以直接從服務器的瀏覽器中打開Web服務。 現在,我也可以在程序中實現它。
如前所述,HelloWorld可以正常工作,但是嘗試通過此Web服務使用EntiTyFramework時仍然存在問題。
我在該服務器上忘記了某些設置嗎? 如前所述,當我在其他服務器(具有原始配置文件)上對其進行測試時,它是否起作用??
我還在此服務器上設置了VS2015,甚至在此服務器上創建了新項目。 沒什么區別。
我希望有人能告訴我該怎么做?
我找到了實際的問題並為我找到了解決方案。
在安裝此Web服務的服務器上,我將其安裝在網站內部的目錄中,該網站本身也使用實體框架。
IIS從此webserice讀取web.config,但在內部將其從根目錄添加到web.config(因此從網站將其添加到web.config)。
該網站的IIS中的配置編輯器抱怨第二個條目的名稱為EntityFramwork(並且只有當您將這些web.configs組合在一起時,您才能獲得此名稱。因為每個web.config只有一個條目:entityFramework)。
由於該服務器上有多個網站,因此我只是在不使用實體框架的網站上安裝了Web服務。 恩,我的問題解決了。
我希望其他人可以從中受益,這花費了我很多時間來解決這個問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.