【发布时间】:2016-12-29 17:35:14
【问题描述】:
目前我正在创建一个 Angular Web Api 客户端以将 JSON 对象传递给 MVC Web Api 控制器。控制器正在使用 HttpGet 方法。
这是 Angular Web api 客户端的代码:
var AngularModule = angular.module('contentApp', []);
var parameter = JSON.stringify({ contentid: 1, contenttitle: "Lorem Ipsum" });
AngularModule.controller('contentCtrl', function ($scope, $http, ApiCall) {
var result = ApiCall.GetApiCall("http://localhost:8000/api/content/search?" + parameter).success(function (data) {
console.log(data);
$scope.ContentList = data;
});
});
AngularModule.service('ApiCall', ['$http', function ($http) {
var result;
this.GetApiCall = function (EndPoint) {
result = $http.get(EndPoint).success(function (data, status) {
result = (data);
}).error(function () {
alert("Error Occured");
});
return result;
};
}]);
这是控制器(服务)的代码:
[HttpGet("Search")]
public async Task<IActionResult> Search([System.Web.Http.FromUri] Content list)
{
try
{
return new ObjectResult(new { status = 1, message = await ContentRepo.Search(new Models.Content())});
}
catch (Exception ex)
{
return BadRequest(ex.Message);
}
}
我已经尝试过了,但是每当它碰到控制器时,由于格式类型不同(始终为空)而无法读取对象。
我的问题是:是否可以从 URL (QueryString) 读取 JSON 对象?如果可能的话,如何处理?
任何帮助将不胜感激:)
谢谢
【问题讨论】:
标签: c# asp.net angularjs json asp.net-mvc