从knockout.js 函数到控制器动作的AJAX 调用未设置服务器端视图模型属性

问题描述

我一直在学习复数课程,试图了解客户端视图模型如何与服务器端控制器操作进行交互。

我有一个带有几个字符串属性的基本视图模型。使用敲除和敲除映射,我可以成功地将我的服务器视图模型映射到客户端视图模型,在视图中进行更改并调用回调到我的控制器的保存操作的保存方法

除了发送到 Save 操作的 JSON 没有反序列化以创建作为 Save 操作采用的参数的服务器端视图模型之外,所有流程都运行良好。

在我从 Pluralsight 课程中获得的示例代码中,视图模型中的断点向我展示了当从客户端调用 Save 操作时所有属性设置器都被调用。 (这不会发生在我的 View Model 类中。)

我尝试了很多东西,主要来自 Stack Overflow 上的建议:

  • 保存操作参数的各种属性 - 如 [FromBody] 等。
  • AJAX 调用中 toJSON、toJS 等的组合
  • 我已经使用 alter() 显示了客户端对象的内容,并且在 Chrome 开发人员窗口中确实包含了我期望的内容
  • 断点显示调用 Save 操作但未设置任何属性时正在创建的服务器端对象。

我觉得这可能是由于 ASP.Net Core(我的项目)和使用 .Net 4.5 的示例课程之间的差异,或者是 Knockout.js 的版本略有不同(因为我不确定如何包含相同的这些文件的版本使用 VS2019 的添加客户端库工具(我发现的所有参考资料仅指已弃用的“Bower”工具。)

有人可以建议我在 ASP.Net Core 中面临哪些可能阻止客户端对控制器操作调用进行反序列化的差异吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)