从javascript调用C#方法

时间:2015-02-27 14:33:59

标签: javascript c# asp.net ajax code-behind

我想在我的javascript工厂GetAccount中从我的控制器AccountController.cs调用方法LoginFactory.js。这样的事情:

AccountController.cs:

public Account GetAccount(string userName)
    { ... }


LoginFactory.js:

if(x>y) {
   var account = <%AccountController.GetAccount(someParam);%>
}


我尝试过使用[WebMethod]和Ajax,但我无法让它工作......我得到了404响应。任何想法都将不胜感激。

1 个答案:

答案 0 :(得分:0)

假设您的GetAccount方法可以在应用程序运行时/Account/GetAccount到达,您可以使用以下方法:

$.ajax({
  type: 'GET',
  url: '/Account/GetAccount',
  data: { 'username' : 'a-username' },
  dataType: 'json',
  success: function(jsonData) {
    alert(jsonData);
  },
  error: function() {
    alert('error');
  }
});

注意 - 这取决于jQuery。

这会导致浏览器/Account/GetAccount发出请求,就像您通过在URL栏中输入URL一样,但当然,捕获返回的json以供使用你的客户端(javascript)脚本。

如果这返回404,则值得检查您的路由。