不从MVC 4项目中的.js文件调用WebAPI服务

时间:2012-10-01 08:50:00

标签: javascript jquery asp.net-mvc

在我的WebApi MVC 4项目中,脚本中的调用如下:

$(document).ready(function () {
    var x = 4;
    var y = 0;
    iAlertHis('<%=ResolveUrl("~/") %>');
});
<。> .js文件如下所示:

function iAlertHis(_url) { 
    $.GetJSON("_url"+"api/History/", function(){});
}

路由如下:

public static class WebApiConfig
{
    public static void Register(HttpConfiguration config) {
        config.Routes.MapHttpRoute( name: "DefaultApi",
                                    routeTemplate: "api/{controller}/",
                                    defaults: new { id = RouteParameter.Optional }
        );
    }
}

,控制器如下:

public class HistoryController : ApiController
{
    public string GetialertHist() {

        BALiAlert objBALiAlert = new BALiAlert();

        JavaScriptSerializer oSerializer = new JavaScriptSerializer();
        string Json = oSerializer.Serialize(objBALiAlert.ialertHist());
        return Json;
   }

}

运行项目会在通话中显示错误:$.GetJSON(_url+"api/History",function(){});

'Microsoft JScript runtime error: Object doesn't support this property or method'

1 个答案:

答案 0 :(得分:1)

JavaScript是一种区分大小写的语言。并且jquery没有方法$.GetJSON。但是有一种方法$.getJSON

此外,定期您将找不到以大写字母开头的任何js函数/属性。通常第一个字母是小写的。