我有一个 MVC 应用程序,当使用 IIS 7.5 在 http://myserver 下托管时,它能够成功地对控制器进行 ajax 调用,即
$.ajax({
url: '@Url.Action("GetData")',
type: 'GET',
async: false,
contentType: 'application/json',
success: function (result) {
serverData = result;
}
});
但是,如果我将其移至子文件夹
http:// myserver/myapp
- 右键单击并“转换为应用程序”我从 ajax 调用中得到 404(加载 mvc 应用程序的其余部分)
当我转换为应用程序时,我尝试了 url 的变化,每个导致 404
{virtual-dir-name}/{controller}/{method}
/{controller}/{method}
../{virtual-dir-name}/{controller}/{method}
../{method}
但我得到 404 每个变体 - 在虚拟目录中使用 @Url.Action 是否有实践?