我正在构建一个Dotnet Core Web应用程序,它需要允许Windows认证的用户浏览连接的虚拟目录并查看并选择托管在那里的文件。从Dotnet核心访问IIS虚拟目录
有没有Dotnet Core应用程序访问虚拟目录的方法?除此之外,有没有办法让一个普通的Dotnet应用程序来做到这一点?
我正在构建一个Dotnet Core Web应用程序,它需要允许Windows认证的用户浏览连接的虚拟目录并查看并选择托管在那里的文件。从Dotnet核心访问IIS虚拟目录
有没有Dotnet Core应用程序访问虚拟目录的方法?除此之外,有没有办法让一个普通的Dotnet应用程序来做到这一点?
有可能这样做。我一直在做这件事情已经两个星期了,到处寻找答案。这是我如何做到的。
您需要在配置app.UseFileServer加()在的Startup.cs
app.UseFileServer(new FileServerOptions
{
PhysicalFileProvider("\\\\virtualPath\\photos\\wait\\"),
RequestPath = new PathString("/AROULETTE"),
EnableDirectoryBrowsing = true
});
这是如何工作的配置方法? 它的设置方式是,您将输入http://localhost:5000/AROULETTE ,它将打开浏览器中PhysicalFileProvider中提供的虚拟路径。当然,这不是我真正想要的。
我需要创建一个目录并用C#将文件复制到虚拟目录中。 一旦我有了FileServer安装程序,我尝试了这样不起作用的东西。
if(!Directory.Exists("/AROULETTE/20170814"))
{
Directory.Create("/AROULETTE/20170814")
}
当然,无论这是否
var path = Path.Combine("http://localhost:5000/", "AROULETTE/20170814")
if(!Directory.Exists(path)
{
Directory.Create(path)
}
相反,你只需要使用文件夹的实际虚拟路径。
if(!Directory.Exists("\\\\virtualPath\\photos\\wait\\20170814"))
{
Directory.Create("\\\\virtualPath\\photos\\wait\\20170814")
}
因此UseFileServer用于创建应用程序和虚拟文件夹,你会创建与ASP.Net 4.5
希望的虚拟目录这可以帮助一些人,因为同样的方式之间的“桥梁”关于这个话题的大部分答案都不清楚。
[IIS中的ASP.NET Core应用程序内的虚拟目录]的可能重复(https://stackoverflow.com/questions/36030121/virtual-directory-inside-of-asp-net-core-app-in- iis) – natemcmaster
谢谢,伙计们。我认为这给了我需要的响亮的“不”。 – BenWurth