jquery - 如何返回Web API数据

标签 jquery asp.net angularjs ajax

我创建了一个 ASP.NET Web API。它似乎有效,因为我可以在浏览器中输入路径,并且它以 XML 格式显示数据库表中的数据。当我编写 jQuery 或 AngularJS 调用来获取 MVC 网站中的数据时,出现错误。经过一番努力,我发现(我认为)jQuery 或 AngularJS 需要 JSON 对象,但 Web API 必须返回 XML 对象。我这样说是因为当我使用 dataType: 'xml' 调用 jQuery $.ajax 时,我终于获得了成功。在我的 Web API 中,我返回数据对象列表。构建此结构以便数据正确匹配回客户端 AJAX 调用的最佳或正常方法是什么?

最佳答案

C#

[WebMethod]
public string GetEmployeeData(int userId)
{
    Dictionary<string, object> returnData = Dictionary<string, object>();

    using(SqlConnection conn = new SqlConnection(connString))
    {
        //etc... etc...
    }

    var jsonSerializer = new JavaScriptSerializer();

    return jsonSerializer.Serialize(returnData);
}

Javascript:

$http.post('MyApp/GetEmployeeData', { userId: 1 }).then(function(response){
    $scope.myData = response.data;
}).catch(function(response) {
    //an error has occurred
});

关于jquery - 如何返回Web API数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37054179/

相关文章:

jquery - 在隐藏的 div 中显示一个 div

c# - Response.Redirect 消除了脚本管理器操作

javascript - 如何在 ng-model 中使用日期过滤器?

AngularJS 非 ASCII 属性名称支持

JavaScript 调用不带括号的函数

javascript - 每次调整窗口大小时,调整大小函数事件都会触发 2 次以上

javascript - 从中获取动态变量

javascript - Javascript 中的子字符串与 substr()

asp.net - 如何获得大的LinkedIn图像共享格式

javascript - 第一级后内容导航中断