Asp.net web api .Net核心Web Api中特定于客户的环境变量

Asp.net web api .Net核心Web Api中特定于客户的环境变量,asp.net-web-api,web-deployment,environment,Asp.net Web Api,Web Deployment,Environment,我正在编写一个软件“包”,它可以(或多或少)被不同的公司作为一个独立的组件使用。但是,应用程序中有一些数据(字符串),我希望在环境和客户之间加以区分 因此,我将最终部署此类配置: 客户1-开发, 客户1-生产 客户2-开发, 客户2-测试, 客户2-生产 客户3-开发, 客户3-UAT, 客户3-预生产, 客户3-生产 等等 在一个旧的wcf项目中,我可能只会为每个配置创建一个不同的web.config,但我不确定如何在这里实现这一点,或者是否有一种更“正确”的方法来实现这一点。这里是环境变量,

我正在编写一个软件“包”,它可以(或多或少)被不同的公司作为一个独立的组件使用。但是,应用程序中有一些数据(字符串),我希望在环境和客户之间加以区分

因此,我将最终部署此类配置:

客户1-开发, 客户1-生产

客户2-开发, 客户2-测试, 客户2-生产

客户3-开发, 客户3-UAT, 客户3-预生产, 客户3-生产

等等

在一个旧的wcf项目中,我可能只会为每个配置创建一个不同的web.config,但我不确定如何在这里实现这一点,或者是否有一种更“正确”的方法来实现这一点。这里是环境变量,还是appsettings或者其他完全不同的东西,比如多个不同的支持项目。。。我当然希望避免维护多个代码库,因为项目中的代码对于每个客户都是100%相同的

谢谢


Peter

您的软件包适用于哪种应用程序?asp.net内核内置的配置管理可以吗。另外,你是在Windows还是Linux上运行它?客户是动态的还是只会添加一次?帖木儿:这是一个web api。朱伯:客户只是在部署的意义上是动态的。每个版本将只有一个客户(尽管该客户可能有单独的环境)。在这个特定的解决方案中,我将使用环境变量,优点是每个客户都可以维护自己的环境设置,而每个环境又可以有不同的设置。在部署时,您不必担心任何类型的转换。看看asp.net core如何处理开发/生产环境变量。我会那样做的。你的软件包的用途是什么?asp.net内核内置的配置管理可以吗。另外,你是在Windows还是Linux上运行它?客户是动态的还是只会添加一次?帖木儿:这是一个web api。朱伯:客户只是在部署的意义上是动态的。每个版本将只有一个客户(尽管该客户可能有单独的环境)。在这个特定的解决方案中,我将使用环境变量,优点是每个客户都可以维护自己的环境设置,而每个环境又可以有不同的设置。在部署时,您不必担心任何类型的转换。看看asp.net core如何处理开发/生产环境变量。我会走那条路。