我有一个在Linux和Windows上运行的Asp.Net Core 1.0.0应用程序。在应用程序中,我需要上传文件并将其保存在wwwroot
子文件夹中。我得到IHostingEnvironment.WebRootPath
并指定一个子文件夹。它在Windows上工作正常,但由于路径不适用于Linux。 Window \
当然不会起作用。那么如何从控制器检测我的应用程序是在Windows或Linux上运行并选择适当的路径分隔符?
答案 0 :(得分:3)
而不是这样,您应该使用Path.Combine
来生成目录名称。例如:
var root = env.WebRootPath;
var myDirectory = Path.Combine(root, "subdirectory");
答案 1 :(得分:0)
您可以在Windows和Linux上使用/