Asp.net mvc 4 asp.net mvc4:由于System.AppDomain.CurrentDomain.BaseDirectory而导致的发布问题

Asp.net mvc 4 asp.net mvc4:由于System.AppDomain.CurrentDomain.BaseDirectory而导致的发布问题,asp.net-mvc-4,Asp.net Mvc 4,我正在开发一个asp.net mvc4应用程序,它运行良好。所以我决定部署它,我成功地发布了我的应用程序(权限和连接字符串有效)。我的问题是一个恼人的500内部服务器错误,我想我能理解: 我正在对一个动作“LocalFiles”进行ajax调用,该动作负责浏览我的应用程序根文件夹中名为“\Exe”的目录,其中包含文件。行动如下: [HttpPost] public JsonResult LocalFiles() { DirectoryInfo folder = n

我正在开发一个asp.net mvc4应用程序,它运行良好。所以我决定部署它,我成功地发布了我的应用程序(权限和连接字符串有效)。我的问题是一个恼人的500内部服务器错误,我想我能理解: 我正在对一个动作“LocalFiles”进行ajax调用,该动作负责浏览我的应用程序根文件夹中名为“\Exe”的目录,其中包含文件。行动如下:

[HttpPost]
    public JsonResult LocalFiles()
    {
        DirectoryInfo folder = new DirectoryInfo(System.AppDomain.CurrentDomain.BaseDirectory + "Exe\\");

        List<FileObject> list = new List<FileObject>();

        //here it performs the browsing

        return Json(list);
    }
[HttpPost]
public JsonResult LocalFiles()
{
DirectoryInfo文件夹=新的DirectoryInfo(System.AppDomain.CurrentDomain.BaseDirectory+“Exe\”;
列表=新列表();
//在这里,它执行浏览
返回Json(列表);
}
当我使用iisexpress
System.AppDomain.CurrentDomain.BaseDirectory“脱机”工作时
工作正常,并返回“C:\Users\DaFriskyMonkey\Documents\Visual Studio 2012\Projects\MainProject\MainProject”。但在发布时,iis无法识别此路径:“找不到路径“C:\Users\DaFriskyMonkey\Documents\Visual Studio 2012\Projects\MainProject\Exe”的一部分,这是正常的,因为“Exe”文件夹不在“\MainProject\”中,而在“\MainProject\MainProject\”中。 如何修改操作以使其浏览正确的文件夹

对不起,如果我的问题有点复杂,如果你需要更多的细节,尽管问


非常感谢。

如果我将“\Exe”复制并粘贴到父文件夹“\MainProject”中,它可以工作,但这解决了问题,但没有解决它:),有什么想法吗?您是否尝试过使用Server.MapPath(“~/Exe”)或System.Web.HostingEnvironment.MapPath(“~/Exe”)?