asp.net-mvc - 将枚举参数从 Ajax Jquery 传递到 MVC Web api

标签 asp.net-mvc jquery enums

我需要调用一个Web api,这个Web api方法接受两个参数,一个是enum类型,另一个是int。我需要使用 Ajax Jquery 调用此 api。如何传递枚举参数。

API代码

[HttpGet]  
public HttpResponseMessage GetActivitiesByType(UnifiedActivityType type, int pageNumber)
{     
    var activities = _activityService.GetAllByType(type, pageNumber);

    return Request.CreateResponse(HttpStatusCode.OK, activities);
}

我的 Ajax 调用代码:

var jsonData = { 'type': 'Recommendation', pageNumber: 0 };

$.ajax({
    type: 'get',
    dataType: 'json',
    crossDomain: true,
    url: CharismaSystem.globaldata.RemoteURL_ActivityGetAllByType,
    contentType: "application/json; charset=utf-8",
    data: jsonData,
    headers: { "authorization": token },
    error: function (xhr) {
        alert(xhr.responseText);
    },
    success: function (data) {
        alert('scuess');
    }
});

任何建议..

最佳答案

枚举被视为从 0 开始的整数,因此请更改:

var jsonData = { 'type': 'Recommendation', pageNumber: 0 };

对此:

var jsonData = { 'type': 0, pageNumber: 0 };

客户端需要知道索引号。您可以对它们进行硬编码,或者使用 @Html.Raw(...) 将它们发送到页面中,或者使它们在另一个 ajax 调用中可用。

关于asp.net-mvc - 将枚举参数从 Ajax Jquery 传递到 MVC Web api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21233634/

相关文章:

c# - 为 EditorFor 订购 Entity Framework 子项

javascript - http post 方法被视为 http get 方法

jquery - 禁用 jQuery UI Datepicker 中除周日之外的所有周日

c - 为什么我们在 C 中需要枚举数据类型,尽管它比通过一个变量字符串甚至 #define 实现它使用更多的内存

c - 从文件中搜索链接列表

css - 在 .NET MVC 中实现动态 CSS 的最佳方式

ASP.NET MVC 和 Linq,什么时候使用?

jquery - 解析 AJAX 内容中的相关资源

javascript - 如何添加简单的图片上传功能?

swift - 如何对带参数的枚举进行 if-else 比较