【发布时间】:2021-02-18 15:22:21
【问题描述】:
我使用 Jetbrains Rider 创建了一个控制台应用程序。然后我将控制台应用程序发布到一个文件夹。我将该文件夹添加到我的系统路径中。我可以运行echo %PATH% 并看到该文件夹在路径中,但是如果我在文件夹中,我只能运行控制台应用程序。如果我将完整路径放入可执行文件,它就不起作用。
C:\Program Files
我还检查了另一个文件的文件权限,这似乎是相同的。我禁用了病毒防护,但也没有解决问题。
关于为什么这不会运行的任何想法?我正在运行 Windows 10。
解决方案
在创建应用程序配置时设置基本路径。
builder
.SetBasePath(Path.GetDirectoryName(Assembly.GetEntryAssembly()?.Location)) // set the base path
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
.AddJsonFile($"appsettings.{context.HostingEnvironment.EnvironmentName}.json", optional: true, reloadOnChange: true)
.AddEnvironmentVariables();
【问题讨论】:
标签: c# windows cmd .net-5 rider