私はVS 11 Beta、.net 4.5およびMVC 4 betaを自分のPCにインストールしました。私はちょうど最新のRCをダウンロードしましたが、今はWebプロジェクトを実行しようとするとこのエラーメッセージが表示されます。私は.NET 4.5を再インストールして、VS 12 RCをアンインストールしてレジンスタンドしてみましたが、それはうまくいきませんでした。私も の提案hereを試しましたが、どちらもうまくいきませんでした。visual studio 2012 RCタイプをロードできませんでしたSystem.Web.Http.RouteParameter
スタック
Could not load type 'System.Web.Http.RouteParameter' from assembly 'System.Web.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.TypeLoadException: Could not load type 'System.Web.Http.RouteParameter' from assembly 'System.Web.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.
Source Error:
Line 26: defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
Line 27: );
Line 28: }
Line 29: }
Line 30: }
Source File: c:\projects\testNew\testNew\App_Start\RouteConfig.cs Line: 28
Stack Trace:
[TypeLoadException: Could not load type 'System.Web.Http.RouteParameter' from assembly 'System.Web.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.]
testNew.RouteConfig.RegisterRoutes(RouteCollection routes) in c:\projects\testNew\testNew\App_Start\RouteConfig.cs:28
testNew.MvcApplication.Application_Start() in c:\projects\testNew\testNew\Global.asax.cs:25
[HttpException (0x80004005): Could not load type 'System.Web.Http.RouteParameter' from assembly 'System.Web.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.]
System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext context, HttpApplication app) +9841101
System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) +118
System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) +172
System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +336
System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +296
[HttpException (0x80004005): Could not load type 'System.Web.Http.RouteParameter' from assembly 'System.Web.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.]
System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +9850940
System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +101
System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +254
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.17626
編集6
私はfuslogvw
を使用してプロジェクトが代わりに私のプロジェクトのSystem.Web.Http.dll
C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.Http\v4.0_4.0.0.0__31bf3856ad364e35
を参照していることが分かりました。このファイルの名前を変更するとプロジェクトが機能しましたが、私は共有ホスティングサイトでこれを行うことはできません。
私は手動で
C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET MVC 4\Assemblies
からDLLを参照してCopy to Local
にそれを設定しました。それでもgac_msil
からロードされます。これをどのように無効にするのですか?
これは私には役に立たなかった。 – FatAlbert
はい、動作します。 @FatAlbert XMLを含むすべてのアセンブリを置き換えることを確認してください – om471987
System.Web.HttpはGAC_MSILの下に存在しません。 – Kyle