数据模型在控制器中没有得到反序列化
本文关键字:反序列化 控制器 数据模型 | 更新日期: 2023-09-27 18:05:38
这是我的模型class
public class ProductModel
{
public Product {set;set;} // Product is one more class
}
我使用下面的javascript代码来获得部分视图,但'模型'在控制器中没有得到反序列化…我错过了什么?
在HTML属性中存储数据,如下所示
JavaScriptSerializer serializer = new JavaScriptSerializer();
var jsonObject = serializer.Serialize(obj)
<span data-singleproduct="@jsonObject" id="@mprodid" class="ShowProductModal">Find out more..</span>
使用jQuery调用部分页面和弹出
$('.ShowProductModal').on('click', function () {
var model = $(this).data('singleproduct');
//I can see data of variable model here in developer tool
$("#ProductModal").dialog({
autoOpen: true,
position: { my: "center", at: "top+350", of: window },
width: 1000,
resizable: false,
title: '',
modal: true,
open: function () {
$(this).load('ShowProductModal', model );
},
buttons: {
}
});
return false;
});
这是我的控制器代码
public PartialViewResult ShowProductModal(ProductModel product)
{
return PartialView("ProductModal", product);
}
product总是null!!
如果我将ProductModel更改为Product,那么它将工作…! 有人能帮帮我吗?
public PartialViewResult ShowProductModal(Product product)
{
return PartialView("ProductModal", product);
}
你应该试试
$(this).load('ShowProductModal', { product: model });
并像这样声明你的方法:
[HttpPost]
public PartialViewResult ShowProductModal([FromBody] JObject data)
{
var product = data["product"].ToObject<ProductModel>();
return PartialView("_SC5ProductModal", product);
}