我正在構建一個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