2012-11-29 15 views
5

昨日、WebロールをデバッグしたときにローカルのWindows Azureエミュレータでこのエラーが発生していました。しかし、配備されたプロジェクトはまだAzureで働いていました。今日、私の展開したプロジェクトは、この同じエラーで失敗しています。助けてください!MVC4 Web APIのGlobal.AsaxエラーがAzureコンピューティングエミュレータで実行されました - 時には

私Global.axax.csファイルのApplication_Startメソッドでこのコードブロックは:タイプ別に違反し

継承セキュリティルール:「System.Net.Http.Formatting.JsonContractResolver

GlobalConfiguration.Configuration.MessageHandlers 
    .Add(new BasicAuthMessageHandler() 
    { 
    PrincipalProvider = new PrincipalProvider() 
    }); 

は、このエラーがスローされます'派生型は、基本型のセキュリティアクセシビリティと一致するか、アクセスしにくいものでなければなりません。

デバッグを開始すると(これはAzure Webロールプロジェクトです)。しかし時には(実際には私がデバッグするたびに発生するようですが)...それを修正するために必要なことは、デバッガを停止して再起動することだけです。問題の原因は何ですか?

+0

「MVC4 Web APIエミュレータ」とは何ですか? – tugberk

+0

良い質問 - 申し訳ありません - 私はデバッガでローカルに実行されていることを意味します。私はAzure Webロールを持っており、デバッガはAzure計算エミュレータを実行します。 –

+1

私は自分自身でこの問題に遭遇しました。 ASP.NETプロジェクトがポータブルクラスライブラリを参照して、Json.Netを参照したときにのみ発生しました。私は一日中成功しなかったので、ライブラリーを移植可能なクラスライブラリにすることで修正したので、Json.Netの別のバージョンを手に入れることができました。私は問題の最底辺にたどり着きませんでした。 –

答えて

1

これはNewtonsoft.Jsonアセンブリと関係がありました。私はプロジェクトのリファレンスから削除し、プロジェクトをきれいにして再構築してから、プロジェクトを再構築してプロジェクトを再構築しました。エラーは消え去った。

System.Net.Http.Formatting.JsonContractResolverはNewtonsoft.Jsonから派生したものです。別のスレッド(ここではhttp://forums.asp.net/t/1812274.aspx/3/10)は、Newtonsoft.JsonをGACから削除してこの同じ問題に対処しました.GACがそこにあり、System.Net.Http.Formattingが存在しなかったからです。これは明らかに人の問題を解決しましたが、私には逆さまのようです(なぜ、派生型はGACにないのですか?

+4

これは私にとっては繰り返し発生する問題です。クリーンなビルドを行うと消えてしまいますが、デバッグしようとするとすぐに再び復帰します。それは私のWebAPIプロジェクトの依存としてPCLを追加することに関連しているようです。 –

+1

同じ問題はありますが、これらのソリューションのどれも動作しません:( – andrecarlucci

1

ナゲットパッケージを更新してみてください。私は鉱山を更新し、問題を修正しました。私も紺碧のサービス自体についてこの問題を抱えていました。

関連する問題