在您安裝.NET Framework 的 4.0 之後的錯誤訊息: 「 無法載入型別 'System.ServiceModel.Activation.HttpModule'"

狀況

請考慮下列案例。您安裝.NET Framework 的 4.0。然後,您安裝較早版本的.NET Framework 中,或您啟用.NET 3.0 WCF HTTP 啟動。在這個案例中,您可能會收到下列錯誤訊息當您執行應用程式時,裝載網際網路資訊服務 (IIS):

無法從組件載入型別 'System.ServiceModel.Activation.HttpModule' ' System.ServiceModel、 版本 = 3.0.0.0,文化特性 = 中性,PublicKeyToken = b77a5c561934e089'。
描述: 目前的 web 要求執行期間發生未處理的例外狀況。請檢閱堆疊追蹤,如需詳細資訊,有關錯誤及其產生程式碼中的位置。

例外狀況詳細資料: System.TypeLoadException: 無法從組件載入型別 'System.ServiceModel.Activation.HttpModule' ' System.ServiceModel、 版本 = 3.0.0.0,文化特性 = 中性,PublicKeyToken = b77a5c561934e089'。

原因

Applicationhost.config 檔案 Windows 處理序啟動服務 (WAS) 具有下一節定義,而且這一節是.NET Framework 的 4.0 與不相容,就會發生這個問題:

< 新增名稱 ="ServiceModel"type="System.ServiceModel.Activation.HttpModule,System.ServiceModel,版本 = 3.0.0.0,文化特性 = 中性,PublicKeyToken = b77a5c561934e089"指定條件 ="managedHandler"/ >

本章節的定義應該如下:

< 新增名稱 ="ServiceModel"type="System.ServiceModel.Activation.HttpModule,System.ServiceModel,版本 = 3.0.0.0,文化特性 = 中性,PublicKeyToken = b77a5c561934e089"指定條件 ="managedHandler,runtimeVersionv2.0"/ >

注意您可以找到 Applicationhost.config 檔案中的下列位置:

%windir%\system32\inetsrv\config

解決方案

若要解決這個問題,請執行下列命令列:

aspnet_regiis.exe /iru

Aspnet_regiis.exe 檔案可以在下列位置找到:

%windir%\Microsoft.NET\Framework\v4.0.30319

(在 64 位元電腦) 上的 %windir%\Microsoft.NET\Framework64\v4.0.30319

需要更多協助?

擴展您的技能
探索訓練
優先取得新功能
加入 Microsoft 測試人員

這項資訊有幫助嗎?

感謝您的意見反應!

感謝您的意見反應! 我們將協助您與我們的其中一個 Office 支援專員連絡以深入了解您的意見。

×