我是新來淘汰賽,似乎無法得到一個簡單的映射工作。我在一個MVC4 C#中。Knockout映射嘗試不映射與JSON響應
我的視圖看起來像這樣:
@{
Layout = "~/Views/Shared/_Layout.cshtml";
ViewBag.Title = "Index";
}
<h2>Simple Mapping Example</h2>
The time on the server is: <span data-bind="text: ServerTime"></span>
and <span data-bind="text: NumberOfUsersConnected"></span> user(s) are connected.
@section Scripts
{
<script type="text/javascript">
function ViewModel() {
var self = this;
self.ServerTime = ko.observable();
self.NumberOfUsersConnected = ko.observable();
}
var vm = new ViewModel();
ko.applyBindings(vm);
$.getJSON('/Mapping/GetServerInfo', function(data) {
ko.mapping.fromJSON(data, {}, vm);
});
</script>
}
例JSON,其從控制器呼叫「映射/ GetServerInfo」返回是:
{"ServerTime":"2013-03-13T14:24:10.5675104-07:00","NumberOfUsersConnected":5}
對於數據結合我試圖文本和值,都不會導致任何數據被綁定和顯示。
我是否錯過了一些非常明顯的東西?
根據評論中的問題是這是我的佈局是什麼。
<script type="text/javascript" src="~/Scripts/knockout-2.2.1.js"></script>
<script type="text/javascript" src="~/Scripts/knockout.mapping-latest.js"></script>
由於
你有沒有在你的佈局引用KO和KO.mapping? @RenderSection(「腳本」)是在@RenderBody和腳本包含之後出現的嗎? – nemesv 2013-03-13 21:34:07
更新的原始問題。謝謝 – 2013-03-13 21:35:48