gpt4 book ai didi

asp.net - 多个 ASP.NET 配置文件

转载 作者:行者123 更新时间:2023-12-02 02:07:41 26 4
gpt4 key购买 nike

我发现了许多有关为 Web 部署使用多个 ASP.NET 配置文件的信息。然而,我仍然不确定我是否能完成我想要完成的事情。

基本上,我正在开发的网站可以部署到三个不同的站点。根据部署到的站点,需要更改配置设置。我想做的是为每个可能的配置(完整的 web.config 文件)提供配置文件,然后能够告诉部署构建哪个配置文件用于特定部署(如果需要,我可以手动编辑它)。

有没有像指向不同的 .config 文件一样简单的事情,或者我需要做一些更复杂的事情?

编辑:我特别担心的一个问题是我还需要在 system.net 中进行邮件设置等设置。因此,我不仅仅希望覆盖应用程序设置。

谢谢

最佳答案

任何配置部分 - 例如 <smtp> - 可以“外化”,例如存储在外部文件中。

除了 file=关于 <appSettings> 的声明(仅适用于应用程序设置:-()它不是“附加”设置 - 您只需将配置系统指向外部文件。

所以你可以在你的 app.config/web.config 中添加这个:

  <system.net>
<mailSettings>
<smtp configSource="smtp.test.config" />
</mailSettings>
</system.net>

这在你的 smtp.test.config 中:

<?xml version="1.0" encoding="utf-8" ?>
<smtp>
<network host="smtp.test.com" port="244" userName="test" password="secret" />
<specifiedPickupDirectory pickupDirectoryLocation="C:\temp\mails"/>
</smtp>

这适用于 .NET 2.0(甚至可能是 1.x),并且适用于每个配置部分 - 但不适用于配置部分组,如 <system.web> .

当然,您现在可以创建其他配置文件,例如 smtp.staging.config等等,现在您的问题已简化为替换 web.config 中的一行。

您可以使用安装脚本、XML 预处理器甚至通过人工干预来完成此操作。

它并没有完全解决 .NET 4 and the web.config transformations 的问题希望可以,但这只是一个步骤,也是一点帮助。

关于asp.net - 多个 ASP.NET 配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2065889/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com