windows10 64位系統 調試IIS10 ASP.NET程序的時候遇到這個問題,pageadmin程序
錯誤信息:
“/”應用程序中的服務器錯誤。
未能從程序集“System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”中加載類型“System.ServiceModel.Activation.HttpModule”。
說明:執行當前 Web 請求期間,出現未經處理的異常。請檢查堆棧跟蹤信息,以了解有關該錯誤以及代碼中導致錯誤的出處的詳細信息。
異常詳細信息: System.TypeLoadException: 未能從程序集“System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”中加載類型“System.ServiceModel.Activation.HttpModule”。
錯誤原因:根據MSDN的解釋:如果安裝了 .NET Framework 4,隨后啟用了 .NET Framework 3.5WCF HTTP 激活,則會發生此錯誤。
解決辦法:
若要解決該問題,請在 Visual Studio 2010 命令提示符下運行下面的命令行:
aspnet_regiis.exe -i -enable
或在cmd中運行:C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i -enable
另:
執行此命令后命令提示符提示錯誤:
用于在本地計算機上安裝和卸載 ASP.NET 的管理實用工具。 版權所有(C) Microsoft Corporation。保留所有權利。 開始安裝 ASP.NET (4.0.30319.33440)。 此操作系統版本不支持此選項。管理員應使用“打開或關閉 Windows 功能”對話框、“服 務器管理器”管理工具或 dism.exe 命令行工具安裝/卸載包含 IIS8 的 ASP.NET 4.5。有 關更多詳細信息,請參見 http://go.microsoft.com/fwlink/?LinkID=216771。 ASP.NET (4.0.30319.33440)安裝完畢。
原因分析:我的操作系統是64位的,網站的應用程序池選擇的是“DefaultAppPool”。它的.NET CLR 版本是v4.0,托管管道模式是集成。據了解,64位操作系統托管管道模式要選擇經典模式。
解決辦法:在IIS中設置網站應用程序池為“.NET v4.5 Classic”。它的.NET CLR版本是v4.0,托管管道模式是經典。然后在此應用程序池的高級設置中設置“啟用 32 位應用程序”的值為“True”,保存即可。(按此思路,設置“DefaultAppPool”的托管管道模式為經典也行,但是我的原則是盡量少地改動。。)
還沒有評論,來說兩句吧...