Windows Azure - 虚拟应用程序

时间:2012-02-05 21:06:02

标签: asp.net-mvc-3 azure web-config

我在Azure中有一个Web应用程序和虚拟应用程序。它们是VS2010中的单独项目,我已将它们添加到一个Azure部署项目的解决方案中。

我创建了多个web.configs来控制参数,即web.debug.config等。

当我发布到azure时,我指定调试适用于主应用程序,但虚拟应用程序指向web.config而不是变体。我该如何纠正这个问题?

非常感谢, 史蒂夫。

2 个答案:

答案 0 :(得分:0)

Web应用程序始终使用web.config。如果要使用调试/发布版本,则必须创建web.config Transformation。在这种情况下,使用选定的构建目标在构建时转换web.config。

答案 1 :(得分:0)

解决方案

http://blog.hill-it.be/2011/03/07/no-web-config-transformation-in-local-azure/开始为我工作的解决方案:

  

要解决此问题,请卸载Azure项目,打开项目文件进行编辑,然后添加标签 [在相应的PropertyGroup下]

<Project ...>    
    <PropertyGroup>
      ...
          <packagewebrole>true</packagewebrole>

解决方法

还有一种解决方法,它适用于本地开发,但不适用于持续集成(或者至少你必须找到另一种技巧)。

  1. 在服务定义文件中添加新的“网站”部分:
  2. <Site name="AnotherSite" physicalDirectory="c:\AnotherSite">
      <Bindings>
        <Binding name="APIEndpoint" endpointName="AnotherSiteEndpoint" />
      </Bindings>
    </Site>
    
    1. 添加新端点以匹配上述代码(任何端口都可以工作):
    2. <InputEndpoint name="AnotherSiteEndpoint" protocol="http" port="623" />
      
      1. 转到网络项目 - &gt;右键单击 - &gt;发布... - &gt; FTP - &gt; Location =“c:\ AnotherSite”

      2. 按F5并转到http://127.0.0.1:623

      3. 它应该有用。