2017-09-14 5 views
1

私はweb.debug.configファイルを利用したいので、私はテスト用データベースを使用してデバッグするときにwebdbを使用したいと思っています。これは私のためには機能しません。私はこれを私のweb.debig.configに持っています。web.debug.configは機能しません

<connectionStrings> 
    <add name="connStr" 
    connectionString="Data Source=LocalSqlserverName;Initial Catalog=testdb;Persist Security Info=True;User ID=Myusername;Password=mypassword" 
    xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/> 
</connectionStrings> 

そして私のweb.configファイルでは、この接続文字列が別のデータベースサーバを指しています。しかし、デバッグすると、web.debug.configの代わりにweb.configファイルのconnectionstringが使用されていることがわかります。私はここで間違って何をしていますか?

+0

アプリケーションをデプロイする場合、それは動作しますが、あなたはVSでアプリケーションをデバッグする場合、それは本当のために 'web.config'ファイル – esiprogrammer

+0

を使用して常に動作していないでしょうか? MSからの解決策を得るには何が役に立たないのですか?:( – MTplus

+0

@esiprogrammerこれについては確信していますか?過去にこれを成功に使用して誓ったことがありましたが、とにかく私は 'xdt :Transform = "SetAttributes"オプションの代わりに "Replace"を使用しましたが、それは問題ではありません。 –

答えて

2

@esiprogrammerは通常、Visual Studioからのパブリッシュのみを変換すると言います。

ただし、Web.configをビルドすると変換できます。 Web.Base.config原点の設定をしてください

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\WebApplications\Microsoft.WebApplication.targets" /> 
<Target Name="BeforeBuild"> 
    <TransformXml 
     Source="Web.Base.config" 
     Transform="Web.$(Configuration).config" 
     Destination="Web.config" /> 
</Target> 

:あなたの*.csprojファイルにこれを追加します。変換を有効にするだけで十分です。すべてのXML設定ファイルで機能します。

出典:

https://stackoverflow.com/a/35561167/3850405

関連する問題