在我的asp.net MVC 4应用程序中,我有一个返回FilePathResult的动作。
在我的本地计算机和QA服务器中,此操作没有错误。
在生产服务器中,它抛出异常:“无法在缓存中找到目录属性”
这是我的代码:
public FileResult Export(string type,string tableName)
{
var outputFileName = IOHelper.BuildOutputFileNameAndPath("output.csv", tableName)
tableAPI.ExportTables(type, outputFileName);
return File(outputFileName, "text/csv", type + ".csv");
}
QA服务器和生产服务器之间的区别在于生产服务器中的应用程序文件位于NETWORK DRIVE而非本地驱动器上。
outputFileName变量的值是File Path是:\\ [应用程序的根目录] \ App_Data \ AdminTablesBackup \ output.csv
我可以看到文件已创建,但在尝试将文件返回给客户端时失败。
有什么建议吗?
答案 0 :(得分:2)
确保您运行应用程序池的帐户对此共享文件夹具有足够的读取权限。如果您在默认的ApplicationPoolIdentity下运行,则该帐户将无权访问网络共享。