gpt4 book ai didi

c# - Knockoutjs 可观察数组到 List

转载 作者:行者123 更新时间:2023-11-30 16:17:46 27 4
gpt4 key购买 nike

我搜索了高低,并尝试了许多不同的选项,但无法弄清楚这里出了什么问题。

我有一个 knockoutjs viewmodel,它看起来像这样:

{"Id":0,"Type":"post","Title":"adsf","AuthorId":0,"Description":"adsfadsf","ChosenCategoryValues":["7","8","9"]}

(为简洁起见省略了一些字段)

除 ChosenCategoryValues 外,一切都很好地传递回 Controller 。那是客户端的一个 observableArray,一个 List<string>在服务器端。它总是返回 null,除非字符串包含第一项中的所有值,然后我必须对其进行字符串解析。

$.post("/serverurl", viewmodel, function (response) { do some stuff }, "json");是它被发送到服务器的方式。

我试过 ko.toJS 使它成为一个简单的数组,但没有结果。

我确定这是一些基本的东西,我是 knockoutjs 的新手,但我已经在这方面工作太久了,而且我在网上找到的所有建议都没有帮助。

最佳答案

为了发送 View 模型数据,您应该将 View 模型数据转换为 JSON(记住 - 可观察对象是简单的函数),这是通过调用 ko.toJSON() 函数实现的。

您还需要告诉服务器,您正在发送 JSON 数据。您无法使用 jQuery post() 方法实现它 - dataType 参数仅影响预期的服务器响应类型,但不影响请求内容类型。所以,只需使用 jQuery ajax() 方法:

$.ajax({
url: '/serverurl',
type: 'POST',
data: ko.toJSON(viewmodel),
contentType: 'application/json',
success: function(response) {
// do some stuff
}
});

关于c# - Knockoutjs 可观察数组到 List<string>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16791396/

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