在控制器中对JSON模型进行沙漠化时出现问题
Having issues Deserialising a JSON model in controller
我有以下C#模型,但它们没有从JSON中获得填充的Id或AssignmentId。有什么帮助吗?:
public class AssignModel
{
[Required]
public Guid Id { get; set; }
public bool Clear { get; set; }
public string AssigneeId { get; set; }
}
public class MassAssignModel
{
[Required]
public List<AssignModel> Tickets { get; set; }
}
public ActionResult MassAssign(MassAssignModel model)
{
//DO stuff here
}
我试图通过取消JSON的序列化来填充这些值,但它从来没有得到值。这是我的javascript,第一个方法调用是massAssign():
function massAssign() {
assignTicketsTo(getSelectedTicketsIds());
}
function getSelectedTicketsIds() {
var tickets;
var selected = $('.selected-ticket:checked');
tickets = selected.map(function () {
return { Id: this.value, AssigneeId: "COMPONENTS'ASTANNARD", Clear:false };
}).get();
return tickets;
}
function assignTicketsTo(selectedTicketsIds) {
var postdata = JSON.stringify({
Tickets: [selectedTicketsIds]
});
$.ajax({
url: Helper.Util.action({ controller: "Ticket", action: "MassAssign" }),
dataType: 'json',
data: postdata,
type: 'post',
success: function (data, textStatus, jqXHR) {
},
error: function (jqXHR, textStatus, errorThrown) {
$("#load_tickets").hide();
Helper.alert(errorThrown);
}
});
}
如果要将JSON发送到MVC控制器,则需要在$.ajax
:中将contentType
设置为'application/json'
$.ajax({
url: Helper.Util.action({ controller: "Ticket", action: "MassAssign" }),
dataType: 'json',
contentType: 'application/json',
data: postdata,
type: 'post',
success: function (data, textStatus, jqXHR) {
},
error: function (jqXHR, textStatus, errorThrown) {
$("#load_tickets").hide();
Helper.alert(errorThrown);
}
dataType用于
您期望从服务器返回的数据类型。
您的代码还有一个问题,当您创建postdata
时,selectedTicketsIds
变量已经包含一个数组,因此您不需要用[selectedTicketsIds]
再次包装它。
因此,将您的postdata
更改为:
var postdata = JSON.stringify({
Tickets: selectedTicketsIds
});
相关文章:
- 在指令控制器中使用$attrs时出现问题
- 将PHP变量传递给jQuery时遇到问题
- Canvas Html5绘图应用程序,移动画布会导致重大问题
- 参数变量出现ngTable指令问题
- 剑道网格jQuery动画()问题
- 我的jQuery插件参数没有正确启动,遇到了问题
- Phonegap-(安卓/iphone)多个图像的图像库出现问题
- TableExport jquery插件:文件名和扩展名问题
- JavaScript Pub/Sub属性访问问题
- JavaScript异步问题
- 如何解决Yii中的页面刷新问题
- Safari(Mac OS)上的jQuery平滑滚动问题
- jqGrid树网格问题
- 使用正则表达式评估电子邮件地址时出现性能问题
- 如何消除代码中的未定义和其他问题
- JavaScript代码问题:我正在将对象转换为数组
- 三星智能电视应用程序;Brightcove示例应用程序远程控制问题
- 由于iframe导致的问题
- ReactJS和SpringDataRest缓存问题可能与websocket有关
- 在控制器中对JSON模型进行沙漠化时出现问题