0

私は2017でVS2012 MVC 5プロジェクトを実行しています。 ClaimsPrincipal.Currentはすべて同じことを返さない限り、すべて正常に動作するようです!ClaimsPrincipal.Current Visual Studio 2017の動作が異なります

正確に同じコードは、VS2012、開発および運用サーバーで完全に機能します。 VS2017からプロジェクトを実行するときは、ClaimsPrincipal.Currentの動作が異なります。いくつかの研究を行う

は、私はこの記事.NETのコアにClaimsPrincipal.Currentは異なる動作をすべき旨の http://davidpine.net/blog/principal-architecture-changes/

を見つけました。

私の場合、両方のIDE(4.0.30319.42000)で正確に同じ.NETバージョンを実行しており、それをEnvironment.Versionで確認しています。

ClaimsPrincipal.CurrentでF12を押すと、まったく同じmscorlib.dllファイルに移動します。

ご協力いただければ幸いです。

答えて

0

これが原因であることが判明しました。

WebMatrix.Data.dll 
WebMatrix.WebData.dll 

これらのファイルがbinフォルダに存在すると、この現象が発生します。 さらに、これらはRazorVersionを上書きし、開発サーバーにアセンブリ参照例外と一致しないものをスローさせます。私のプロジェクトで

iは、WebMatrix.WebDataバージョン2.0.0.0

のVisual Studio 2012何らかの理由でその参照を無視したへの参照を持っていたし、それはbinフォルダので、すべてにWebMatrix.dllを公開していませんでしたうまく働いていた。

Visual Studio 2017はこれらのdllをbinフォルダに公開していたため、おそらく組み込みのシンプルメンバーシッププロバイダがオーバーライドされたこの競合が発生しました。

WebMatrixへの参照を削除すると、問題が解決しました。

関連する問題