我在 mvc3 中开发会计应用程序。它在 Visual Studio 2010 中正确运行。开发某些部分后,我想通过在 IIS7.5 上部署来检查它。它部署正确,但没有命中我用来通过 AJAX 和 jquery 从数据库获取数据的控制器操作。下面是我的控制器方法。
[HttpPost]
public JsonResult AutocompleteSuggestions(string term)
{
var namelist = objSvc.GetAutoCompData(term);
return Json(namelist, JsonRequestBehavior.AllowGet);
}
下面是我的javascript函数,它使用这个控制器函数并从数据库中获取结果
$(document).ready(function () {
$(function () {
$("#AcCode").autocomplete({
source: function (request, response) {
$.ajax({
url: '@Url.Action("AutocompleteSuggestions", "Home")', //"/Home/AutocompleteSuggestions",
type: "POST", dataType: "json",
data: { term: request.term },
success: function (data) {
response($.map(data, function (item) {
return {
label: item.code, value: item.desc
}
}))
}
})
},
minLength: 1,
select: function (event, ui) {
event.preventDefault();
if (ui.item) {
$("#Descrip").val(ui.item.value);
$("#AcCode").val(ui.item.label);
}
}
});
});
});
它在 Visual Studio 2010 中运行时可以正常工作并给我准确的结果。但是在 iis7.5 中部署它后会出现错误 NetworkError: 404 Not Found
"zulfiqar/CBS/JV/@Url.Action(%22GetVNO%22,% 20%22JV%22)" 这里 Zulfiqar 是我的系统名称,cbs 是应用程序名称。
我还在发布时添加了可部署的程序集。请任何人告诉我为什么这会在 IIS 上出现错误。
注意:它在 firebug html 面板中给出以下错误。说明:HTTP 404。您要查找的资源(或其依赖项之一)可能已被删除、名称已更改或暂时不可用。请查看以下 URL 并确保其拼写正确。
请求的 URL:/CBS/JV/@Url.Action("GetVNO", "JV")