Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net core 将文件夹上载到ASP.NET核心网站的文件共享_Asp.net Core_Virtual Directory - Fatal编程技术网

Asp.net core 将文件夹上载到ASP.NET核心网站的文件共享

Asp.net core 将文件夹上载到ASP.NET核心网站的文件共享,asp.net-core,virtual-directory,Asp.net Core,Virtual Directory,我希望上载文件夹位于文件共享上 我想要这个的原因:冗余前端 因此,与其保存到: C:\inetpub\wwwroot\wwwroot\Uploads 上载内容应保存到: \\文件共享01\MyWebsite\Uploads 我知道这是存在的。这适用于从文件共享中读取,但写入上载目录仍会写入lokal驱动器。 因此,使用VirtualDirectory,我可以访问文件共享上的内容,但新文件不会写入其中 以下是我保存文件的(简化)方式: IFormFileCollection files = Req

我希望上载文件夹位于文件共享上

我想要这个的原因:冗余前端

因此,与其保存到:

C:\inetpub\wwwroot\wwwroot\Uploads

上载内容应保存到:

\\文件共享01\MyWebsite\Uploads

我知道这是存在的。这适用于从文件共享中读取,但写入上载目录仍会写入lokal驱动器。 因此,使用VirtualDirectory,我可以访问文件共享上的内容,但新文件不会写入其中

以下是我保存文件的(简化)方式:

IFormFileCollection files = Request.Form.Files;
var file = files.First();
using (var stream = new FileStream(@"Uploads\myfile.png", FileMode.Create))
{
    await file.CopyToAsync(stream);
}
当我尝试将新网络路径保存为绝对路径时,似乎我需要更高的权限,最后出现500.30错误。我想是因为应用程序池用户的权限太少了,我认为这是一件好事

我的问题:


这个问题是如何作为良好实践解决的?在配置VirtualDirectory(包括编写)时,不是所有内容都应该自动工作吗?

解决了这个问题。由于appconfig.json中的一个错误,我刚刚得到了500.30错误。在我的基本路径中,我没有逃脱反斜杠

我发现了这句话

无需在IIS中添加“虚拟目录”,这些内容是 不赞成

并解释这是通过Startup.cs Configure()方法完成的:

ASP.NET核心的另一个配置之谜已解开:)

app.UseFileServer(new FileServerOptions
{
    FileProvider = new PhysicalFileProvider(@"\\server\path"),
    RequestPath = new PathString("/MyPath"),
    EnableDirectoryBrowsing = false
});