Asp.net core .Netcore 2.0和虚拟目录

Asp.net core .Netcore 2.0和虚拟目录,asp.net-core,Asp.net Core,我有一个.netcore 2.0项目在IIS windows 2012上运行 存在一个问题,因为我似乎无法使存在于应用程序根目录之外的虚拟目录正常工作。当文件位于解决方案中时,此选项可以正常工作: app.UseStaticFiles(new StaticFileOptions() { FileProvider = new PhysicalFileProvider( Path.Combine(Directory.GetCurrentDirectory(), @"wwwroot",

我有一个.netcore 2.0项目在IIS windows 2012上运行

存在一个问题,因为我似乎无法使存在于应用程序根目录之外的虚拟目录正常工作。当文件位于解决方案中时,此选项可以正常工作:

app.UseStaticFiles(new StaticFileOptions()
{
    FileProvider = new PhysicalFileProvider(
    Path.Combine(Directory.GetCurrentDirectory(), @"wwwroot", "images")),
    RequestPath = new PathString("/MyImages")
});
但是,当位于根文件夹之外时,以下内容不适用-

app.UseDirectoryBrowser(new DirectoryBrowserOptions()
{
    FileProvider = new PhysicalFileProvider(Configuration["Keys:UploadFolder"]),
    RequestPath = new PathString("/upload")
});
这样做的原因是我已经用octopus deploy设置了CI。每次我进行部署时,上传的文件都不再存在,而不使用虚拟目录或在octopus中创建一些powershell脚本来复制上次部署的所有文件


在.netcore 2.0中使用虚拟目录的IIS中解决此问题的任何建议或方法?

来自Octopus Deploy description:使您能够轻松地自动化即使是最复杂的应用程序部署此工具不应该将东西放在它们所属的位置吗?想要访问应用程序外部的虚拟目录似乎很不寻常,因为它在逻辑上并不存在(我认为)。如果您希望对服务器上的某个随机目录进行本机文件访问,这是一回事,但您似乎要将指向另一个目录的新虚拟目录添加到另一个站点或应用程序,以执行您想要的操作。因此,用户上载文件的上载目录每次都应复制所有文件。如果此文件不断增长会发生什么情况。因此,对我来说,使用虚拟目录更有意义。我不确定.net core 2.0是否支持这一点,但如果这些文件是用户内容,那么在部署期间不应该让它们单独存在吗?或者,除了部署之外,八达通是否还执行了错误的备份/恢复操作?PS-难道你不能将感兴趣的文件夹作为另一个虚拟目录添加到应用程序中吗?(正如我之前想说的)用户可以将文件上载到解决方案so deploymentfolder1路由中的目录,然后在每次部署时将内容复制到ui上的deploymentfolder2 so视图,或者也可以上载到目录/但是,要查看该目录的内容而不复制文件,它需要是一个虚拟目录。我似乎无法让.net core 2.0查看RouteHa之外文件夹的内容!您的意思是,创建的任何虚拟目录都不能指向计算机上的任何位置,只能指向解决方案的某些子目录。明白了。来自Octopus部署描述:使您能够轻松自动化即使是最复杂的应用程序部署,这个工具不应该把东西放在它们应该放的地方吗?想要访问应用程序外部的虚拟目录似乎很不寻常,因为它在逻辑上并不存在(我认为)。如果您希望对服务器上的某个随机目录进行本机文件访问,这是一回事,但您似乎要将指向另一个目录的新虚拟目录添加到另一个站点或应用程序,以执行您想要的操作。因此,用户上载文件的上载目录每次都应复制所有文件。如果此文件不断增长会发生什么情况。因此,对我来说,使用虚拟目录更有意义。我不确定.net core 2.0是否支持这一点,但如果这些文件是用户内容,那么在部署期间不应该让它们单独存在吗?或者,除了部署之外,八达通是否还执行了错误的备份/恢复操作?PS-难道你不能将感兴趣的文件夹作为另一个虚拟目录添加到应用程序中吗?(正如我之前想说的)用户可以将文件上载到解决方案so deploymentfolder1路由中的目录,然后在每次部署时将内容复制到ui上的deploymentfolder2 so视图,或者也可以上载到目录/但是,要查看该目录的内容而不复制文件,它需要是一个虚拟目录。我似乎无法让.net core 2.0查看RouteHa之外文件夹的内容!您的意思是,创建的任何虚拟目录都不能指向计算机上的任何位置,只能指向解决方案的某些子目录。知道了。