【发布时间】:2018-04-18 21:18:12
【问题描述】:
我正在编写一个 .Net Core C# 控制台程序。测试时,使用项目属性中定义的环境变量很方便:
我写了这样的简单代码:
string rdsDatabase = System.Environment.GetEnvironmentVariable("RDSDatabase");
我刚刚得知没有创建 .exe,您必须使用“DotNet”来运行 .net 核心控制台程序 (https://blogs.msdn.microsoft.com/benjaminperkins/2017/03/07/net-core-application-where-is-my-exe-how-to-publish/)。在那种情况下,我应该在运行时将这些环境变量放在哪里?我知道有一些替代方案,如本文所述:https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration?tabs=basicconfiguration。我可以保持简单并使用 GetEnvironmentVariable 吗?
【问题讨论】:
-
可以使用应用配置文件吗?
-
创建一个 CMD 文件,首先设置变量,然后使用您的 dll 调用 dotnet。但最好使用配置文件。
-
@Yuri - 我“可以”做任何事情,但寻找快速简单的东西(同时平衡最佳实践)。问题是我可以使用 GetEnviornmentVariable 吗?它是否读取 app.config,如果是,格式是什么?
-
@Styxxy - 然后使用set命令创建windows环境变量?
-
环境变量在 Unix 上是个大问题。用户应该敲入自己的 bash 脚本来做事。由于 .NETCore 预计将在其中一种 Unix 风格上运行,因此环境变量卷土重来,因此必须添加此配置对话框。我猜它们在 Windows 上并不是很受欢迎,这就是这个问题是如何发生的。使用 SET 命令编写一个 .bat 文件。
标签: c# configuration .net-core