95

I have a web.config with 2 transforms - for debug and release.

web.config:

<connectionStrings>
    <clear />
    <add name="StrName" connectionString="data source=.\sqlexpress;User Id=sa;Password=pass;Database=SocialBot;"
                providerName="System.Data.SqlClient" />
</connectionStrings>

I just copied the example given and replaced the name with StrName. I end up with :

<add name="StrName" connectionString="$(ReplacableToken_SocialBotConnectionString-Web.config Connection String_0)"
                providerName="System.Data.SqlClient" />

What the hell is ReplacableToken_ ?

I have another project and it works with no problem there.

sirrocco
  • 7,975
  • 4
  • 59
  • 81

2 Answers2

158

If, like me, you're running up against this problem while trying to automate your build process using msbuild from the command line. Specifically, the parameter you need to set is:

/p:AutoParameterizationWebConfigConnectionStrings=False

This is most likely what VS is doing on your behalf when you publish to the filesystem

sideshowbarker
  • 81,827
  • 26
  • 193
  • 197
Iain Hunter
  • 4,319
  • 1
  • 27
  • 13
31

If you want to build with Visual Studio 2010, add the following line to your configuration PropertyGroup in your .csproj:

<AutoParameterizationWebConfigConnectionStrings>False</AutoParameterizationWebConfigConnectionStrings>

More details here: How to get rid of "$(ReplacableToken...)" in web.config completely

Community
  • 1
  • 1
Andre Albuquerque
  • 1,881
  • 1
  • 18
  • 15