2012-06-07 16 views
12

私は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からロードされます。これをどのように無効にするのですか?

答えて

8

今の答えはRCにベータ版の上

C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET MVC 4\Assemblies 

C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.Http\v4.0_4.0.0.0__31bf3856ad364e35 

へのアップグレードは別で働いていたフォルダからDLLを置き換えることであるために機械。私はこれが将来誰かを助けることを願っています。

私は良い答え

+0

これは私には役に立たなかった。 – FatAlbert

+1

はい、動作します。 @FatAlbert XMLを含むすべてのアセンブリを置き換えることを確認してください – om471987

+0

System.Web.HttpはGAC_MSILの下に存在しません。 – Kyle

6

私はあなたにもMVC4ベータ版からMVC4 RCへとアップグレードすることをお勧め:http://www.asp.net/mvc/mvc4 そしてリリースによるノート:「あなたはアンインストールせずに、ASP.NET MVC 4リリース候補版にASP.NET MVC 4開発者プレビューやベータ版をアップグレードすることができます。 '

私はちょうどそれをして、エラーを取り除いた。

あなたのアプリはGACの古いMVC4ベータを指しているからです。

代わりに、このリンクで言及されているDEVPATH環境変数を使用しています。 http://www.christophdebaene.com/blog/2012/04/06/building-the-source-code-of-asp-net-web-api/

ヴィンセント

+0

私はすでに私のOPで言及したようにDEVPATHを試しました。 MVC 4 RCには2012 RCが付属しています。 2012年に別途ダウンロードするオプションはありません。最新の編集もご覧ください – Eonasdan

+1

私の質問をもう一度更新しました。新しいアイデアは? – Eonasdan

9

を見つけた場合、私は同じ問題を抱えていた、とエラーにグーグルながら、この質問を見つけた更新します。私は私の窓にインストールされたプログラムを見たとき 、私は3 MVC 4 'のアプリケーションのインストールがあった見た:

  • MVC 4(バンドル)

    1. MVC 4 VS 2010のツール
    2. はMVC 4

    「MVC 4」アプリケーションをアンインストールしてから、プロジェクトが正常に機能しました。

  • +0

    ありがとうございました。私はこの質問を作成した時点で私が見つけたすべてを既にアンインストールしていました。それは私のために働かなかったが、私はあなたのために働いてうれしいです。 – Eonasdan

    +0

    これは私のためのトリックを行う。ありがとう。 – Dariusz

    +0

    私の問題を修正しました! – jray0039

    関連する問題