如何在发布之前根据生成配置重写文件



我有一个新的asp.net V5应用程序,它实际上只是一个静态的角度站点,我正在尝试进行相当于web.config的转换。我的app.js文件定义了一个常量,即serviceUrl,它指向我们的api(不在同一网站中)的url

我已经使用了gulp-replacement,并为我们的每个构建目标创建了任务,这些任务成功地替换了需要替换的单个字符串。

我遇到的问题是,我需要能够根据选择的构建配置更改服务url,这样我们就可以自动部署等,而不必为每个不同的目标更改该url。(即dev转到devapi.xxx.com,release转到https://api.xxx.com等等)

我已经找到了预发布脚本部分,但它似乎不允许我根据配置进行具体说明。配置部分似乎不允许我指定将运行的脚本。

所以我的问题是,如何执行预发布步骤,根据配置在上下文中查找和替换该字符串?

您应该了解使用多个环境。

基本上,你的appsettings.json就是你想要的。在你的Startup.cs中,你应该有一条看起来像这样的线:

var builder = new ConfigurationBuilder()
    .AddJsonFile("appsettings.json")
    .AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true);

默认情况下,在Visual Studio中,ASPNET_ENV环境变量将设置为Development。当不由Visual Studio运行时,它将默认为Production

因此,根据定义,在生产中运行应用程序时,它将自动用appsettings.Production.json覆盖appsettings.json值。

这个文件当然是可选的,可以由你的IT部门保存,里面有所有珍贵的密码

但是,如果您正在存储密码和连接字符串,我强烈建议您阅读有关应用程序秘密的安全存储的内容。

相关内容

  • 没有找到相关文章

最新更新