c# - 同一应用程序上有多个 azure 网站?

标签 c# asp.net azure

我有一个网络应用程序,需要部署在不同的网站上。

条件:

  1. 所有网站的应用代码均相同;
  2. 应用程序是数据库驱动的;
  3. 不同的网站必须连接到不同的数据库;
  4. 数据库的连接字符串在 web.config 中定义。

如何让不同的网站使用相同的应用程序部署和不同的 web.config 从不同的数据库中提取数据?

这是我的控制面板现在的样子: enter image description here

这些网站都是我在 Visual Studio 之外单独发布的应用程序。

最终目标是这样的: enter image description here

我找到这篇文章:http://www.wadewegner.com/2011/02/running-multiple-websites-in-a-windows-azure-web-role/ 它在“在 Web 角色的两个站点中运行相同的项目”中简要讨论了这一点

但这似乎应该用于本地设置,并且没有讨论如何在远程 Azure 实例上获取它。

最佳答案

这看起来非常简单。不确定您的问题到底是什么。

您可以轻松地将多个 Azure 网站映射(从源代码控制部署)到同一源代码存储库。然后,如果您使用 VSO (Visual Studio Online),链接将为每个站点创建一个新的 CI 构建定义。然后,您只需编辑构建配置以包含每个环境的适当配置设置。

如果您使用其他源代码管理,您仍然可以自定义持续部署的工作方式。所有设置均可通过特殊的.dpeloyment进行配置。文件。您可以阅读更多关于 these configurable settings here 。最重要的部分:

SCM_BUILD_ARGS=-p:Configuration=Debug;PublishProfile=MyChainedTransform

您可以更改构建配置以匹配目标站点的配置。

现在,如何使其独立于源代码控制。优秀的捻角羚大师也考虑过这一点。您可以通过 Application Setting for the web site itself 调整这些设置(检查部分Using App Settings instead of .deployment file:

Instead, you can use App Settings to set the same values that are supported in the .deployment file. The steps are:

Go to the Configure tab for you site in the Azure portal

Add an App Setting called Project, and set its value to something like WebProject/WebProject.csproj

Then in your other web site you can set Project to point to a different .csproj file.

因此,您使用 key SCM_BUILD_ARGS 添加一个新条目和值-p:Configuration=<your_desired_configuration>在站点应用程序设置中,您应该准备就绪。

免责声明:尚未检查解决方案,但没有理由认为其中任何一个都不起作用。

关于c# - 同一应用程序上有多个 azure 网站?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28884215/

相关文章:

java - Spring Boot 应用程序的 Azure 应用服务部署无法从 Jenkins 运行

c# - 如何在代码隐藏中访问扩展 Panel 的自定义控件的公共(public)属性?

c# - 使用 C# 中的代码隐藏按钮单击时创建 Javascript 警报

c# 使用套接字进行单元测试

javascript - 完整日历无法识别 Chrome 中日期字段上的点击事件?

c# - 无法将类型 'string' 转换为 'float'

JavaScript-在 Asp.Net 上获取单击的项目到文本框

c# - 无法将 'this' 作为 ref 或 out 参数传递,因为它是只读的

azure - 通过 Azure CLI 配置 Blob 存储的日志记录

linq - 可以为 azure 表制作 IQueryable<Poco> 存储库吗