gpt4 book ai didi

javascript - 数据模型未在 Controller 中反序列化

转载 作者:行者123 更新时间:2023-12-03 06:10:45 27 4
gpt4 key购买 nike

这是我的模型类

public class ProductModel
{
public Product {set;set;} // Product is one more class
}

我使用下面的 JavaScript 代码来获取部分 View ,但“模型”没有在 Controller 中反序列化...我缺少什么?

将数据存储在 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;
});

这是我的 Controller 代码

public PartialViewResult ShowProductModal(ProductModel product)
{
return PartialView("ProductModal", product);
}

产品始终为空!!!

如果我将 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);
}

关于javascript - 数据模型未在 Controller 中反序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39331463/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com