如何验证WebMatrix是否正在执行web.config转换?

时间:2014-08-03 19:37:59

标签: visual-studio azure asp.net-mvc-5 webmatrix web.config-transform

我有一个MVC5项目,我通过WebMatrix发布到Azure,我已经在web.config中为生产中的数据库服务器定义了一个连接字符串,如下所示:

<configuration>
  <connectionStrings>
    <add 
      name="MyProjectContainer"
      providerName="System.Data.EntityClient"
      connectionString="[metadata stuff];
        provider=System.Data.SqlClient;
        provider connection string=&quot;
          data source=x1.database.windows.net,1433;
          initial catalog=MyProject;
          Uid=x@x1;
          app=EntityFramework;
          Pwd=xxx
          &quot;"
    />
  </connectionStrings>

...对于本地开发我在web.Debug.config中有一个条目,如下所示:

<connectionStrings>
    <add xdt:Transform="Replace" xdt:Locator="Match(name)"
         name="MyProjectContainer"
         providerName="System.Data.EntityClient"
         connectionString="[metadata stuff];
           provider=System.Data.SqlClient;
           provider connection string=&quot;
             data source=MyDevServer;
             initial catalog=MyProject;
             integrated security=True;
             multipleactiveresultsets=True;
             App=EntityFramework
           &quot;"
           />

我之所以选择这种方法,是因为web.config中的空connectionString带有web.Release.config中的转换似乎无法正常工作。当我在Azure上发布我的应用程序时,当我尝试在本地运行它时,Visual Studio正在尝试连接到Azure数据库而不是本地服务器。

所以我有两个问题:

  1. 当我在WebMatrix上发布时,我可以忽略的是变换不起作用?因为如果我能做到这一点,我会将主web.config中的connectionString视为空,并将web.Debug.config和web.Release.config中的正确值设置为

  2. Visual Studio有什么问题,它不知道如何进行转换?

  3. 有没有人在努力解决这个问题?

0 个答案:

没有答案