我在我的mvc应用程序中使用backbone.js,我有一个场景,我必须将数组传递给Rest API中的Post方法。我正在尝试发送一组模型,然后调用this.collection.create(model)
。我试图将Post方法称为
var myArrayofModels = JSON.stringify(e.models);
this.collection.create(myArrayofModels );
这里e.models
是一个模型数组,我转换为json并调用Post方法,我希望像Post这样在Post方法上接收模型数组
public HttpResponseMessage Post(InsuranceAddressViewModel[] model)
{
return null;
}
但是我在Post方法中得到了null数组。我将模型数组转换为json的方法很好或者必须做其他事情。我尝试了几种解决方案,但无法理解。
答案 0 :(得分:1)
答案可以在Stack Overflow找到。基本上,您将集合存储在模型中,然后覆盖模型中的toJSON方法。下面是一个简单的例子。
var ModelArray = Backbone.Model.extend({
toJSON: function() {
return this.collection.toJSON();
}
});
var modelCollection = new ModelArray({ collection: collectionOfModels })
modelCollection.save();
然后,您的控制器应该拾取您要保存的格式正确的模型阵列。