使用 Knockout、MVC 和 Kendo 时,在控制器 'Web.Controllers.HomeController' 上未找到 public 操作方法 'undefined'
A public action method 'undefined' was not found on controller 'Web.Controllers.HomeController'., when using Knockout, MVC, and Kendo
我们有一个使用 Kendo 和 Knockout 的 MVC (.NET 4.5.1) 应用程序。
直到上周我们 将 Kendo 库从 2018 升级到 2020 时,它一直运行良好。 (2020.2.617).
现在,我们在 Application_Error 中一直遇到此错误 Global.asax:
A public action method 'undefined' was not found on controller 'Web.Controllers.HomeController'
这是导致问题的相关代码,我在应用程序的其他页面中 copy/paste 进行了测试,但我总是在 Global.asax 中遇到相同的错误。
<div id="divId" data-bind="kendoWindow: { isModal: true, widget: widget }">
<textarea id="dummyId" data-bind="kendoEditor: { value: 'title', widget: editor} "></textarea>
</div>
<script type="text/javascript">
var test = function () {
var self = this;
self.editor = ko.observable();
self.widget = ko.observable();
}
ko.applyBindings(new test(), document.getElementById("divId"));
</script>
如果我删除了其中一个组件,KendoWindow 或 KendoEditor,它不会给出异常。
与 BundleConfig.cs 升级前相比,我们正在加载所有新的 kendo 库。
知道是什么原因造成的吗?如何解决?回到 Kendo 2018 年,不再是一种选择。
我刚刚看到 Kendo (2020.3.915) 的最新版本中有一个修复程序可以解决这个问题:
我们有一个使用 Kendo 和 Knockout 的 MVC (.NET 4.5.1) 应用程序。 直到上周我们 将 Kendo 库从 2018 升级到 2020 时,它一直运行良好。 (2020.2.617).
现在,我们在 Application_Error 中一直遇到此错误 Global.asax:
A public action method 'undefined' was not found on controller 'Web.Controllers.HomeController'
这是导致问题的相关代码,我在应用程序的其他页面中 copy/paste 进行了测试,但我总是在 Global.asax 中遇到相同的错误。
<div id="divId" data-bind="kendoWindow: { isModal: true, widget: widget }">
<textarea id="dummyId" data-bind="kendoEditor: { value: 'title', widget: editor} "></textarea>
</div>
<script type="text/javascript">
var test = function () {
var self = this;
self.editor = ko.observable();
self.widget = ko.observable();
}
ko.applyBindings(new test(), document.getElementById("divId"));
</script>
如果我删除了其中一个组件,KendoWindow 或 KendoEditor,它不会给出异常。
与 BundleConfig.cs 升级前相比,我们正在加载所有新的 kendo 库。
知道是什么原因造成的吗?如何解决?回到 Kendo 2018 年,不再是一种选择。
我刚刚看到 Kendo (2020.3.915) 的最新版本中有一个修复程序可以解决这个问题: