asp.net-mvc-3 – 如何使用ASP.NET MVC 3“Razor”查看引擎在KnockoutJS中启用数据绑定?

我试图用ASP MVC 3的“Razor”视图引擎实现 this Knockout example

第一个主题涵盖使用标准ASP视图引擎的C#数组的简单数据绑定。我正在尝试使用“Razor”的示例示例,这行:

<script type="text/javascript"> 
    var initialData = <%= new JavaScriptSerializer().Serialize(Model) %>; 
</script>

导致initialData的空变量。

我也试过这个:

@{
    string data = new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(Model);
}

然后指定initialData,如下所示:

var initialData = @Html.Raw(data);

这将使用数据集填充initialData,但绑定不起作用。

我只是试图数据绑定这个集合,以显示一些想法,如下例所示:

<p>You have asked for <span data-bind="text: gifts().length">&nbsp;</span> gift(s)</p>

为什么数据绑定在这种情况下工作?

解决方法

MVC3最简单的方法是:
var initialData = @Html.Raw(Json.Encode(Model));

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....