2017-04-18 3 views
0

私のソリューションのこの特定のサブプロジェクトによって読み込まれているweb.configにはすでに存在するエントリと競合する接続文字列があることを示すエラーが発生しました-loaded web.configファイル (例外メッセージは次のとおりです。追加情報:エントリー「connStr」は既に追加されてい)をどのweb.configがロードされたのかを確認

を簡単にロードされる/ロードされているすべてのweb.configsのリストを見つける方法はあります紛争が発生する場所を確認できるようにします

+0

正確な重複はありませんが、私はこの回答が役立つと思います。http://stackoverflow.com/questions/12114336/what-is-net-hierarchy-for-loading-of-system-configuration-properties –

答えて

1

ロードされるweb.configは1つだけですが、マシンの構成から継承されますn。 IISについては、これはここにある:

%userprofile%\documents\iisexpress\config\applicationhost.config 
%userprofile%\my documents\iisexpress\config\applicationhost.config 
$(solutionDir)\.vs\config\applicationhost.config (only for Visual Studio 2015 and above) 

だからあなたはそこから重複を削除、または例えば、あなたのweb.configremoveエントリを追加することができます。

%windir%\Microsoft.NET\Framework\framework_version\CONFIG\machine.config 

そして、これらの場所の一つでIIS Expressの

<connectionStrings> 
    <remove name="MyConnection" /> 
    <add name="MyConnection" connectionString="..." providerName="System.Data.SqlClient" /> 
</connectionStrings> 
+0

ローカルの場合IISは '%WINDIR%\ System32 \ inetsrv \ config \ applicationHost.config'です。 – Romoku

1

これまで私がこの問題を抱えていましたが、私はメインのweb.configにinheritInChildApplications="false"を追加しました。こうすることで、私のsub web.configには矛盾がないことがわかります。

関連する問題