Twitter bootstrap 在MVC5中使用敲除JS绑定博客项目集合以查看
我有一个场景,在我的视图中显示一组博客文章,这是一个asp.NETMVC5应用程序。我无法在视图上迭代我的收藏以显示博客文章列表 我的代码如下: 模范班Twitter bootstrap 在MVC5中使用敲除JS绑定博客项目集合以查看,twitter-bootstrap,asp.net-mvc-4,knockout.js,Twitter Bootstrap,Asp.net Mvc 4,Knockout.js,我有一个场景,在我的视图中显示一组博客文章,这是一个asp.NETMVC5应用程序。我无法在视图上迭代我的收藏以显示博客文章列表 我的代码如下: 模范班 public class Blogs { public int BlogId { get; set; } public string BlogName { get; set; } public string SmallDescription { get; set; } public DateTime Creati
public class Blogs
{
public int BlogId { get; set; }
public string BlogName { get; set; }
public string SmallDescription { get; set; }
public DateTime CreationDate { get; set; }
public List<string> Tags { get; set; }
}
最后是我想列出帖子的视图
@model IEnumerable<TestApplication.Models.Blogs>
@using System.Web.Script.Serialization;
@{string data = new JavaScriptSerializer().Serialize(Model);}
@section scripts{
<script src="~/Scripts/knockout-3.3.0.js"></script>
<script src="~/Scripts/knockout.mapping-latest.js"></script>
<script src="~/Scripts/BlogViewModel.js"></script>
<script type="text/javascript">
var blogViewModel = new BlogViewModel(@Html.Raw(data));
ko.applyBindings(blogViewModel);
</script>
}
<div class="well well-sm">
<div class="tabbable-panel">
<div class="tabbable-line">
<ul class="nav nav-tabs">
<li class="active">
<a href="#tab_default_trends" data-toggle="tab">
Its Trending!
</a>
</li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="tab_default_trends">
<div class="container">
<div class="col-md-12" data-bind="foreach: blogViewModel">
<h3>
<a href="#" class="btn-link" data-bind="text: BlogName">
</a>
</h3>
<p data-bind="text: SmallDescription">
</p>
<div>
<span class="badge" data-bind="text: CreationDate"></span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
@model IEnumerable
@使用System.Web.Script.Serialization;
@{string data=new JavaScriptSerializer().Serialize(Model);}
@节脚本{
var blogViewModel=newblogviewmodel(@Html.Raw(data));
应用绑定(blogViewModel);
}
-
此代码运行良好,但没有任何数据 查看页面源时,数据是否正确呈现在页面中?你能发布JSON吗?看起来像是在为我工作检查这里。Cheers我正在从controller public ActionResult Index()返回博客列表{var blogCollections=new Models.BlogCollection().GetLatestBlogs();返回视图(blogCollections);}我正在使用Javascript序列化程序。
new BlogViewModel(@Html.Raw(data))
这一行的内容。
BlogViewModel = function (data) {
var self = this;
ko.mapping.fromJS(data, {}, self);
};
@model IEnumerable<TestApplication.Models.Blogs>
@using System.Web.Script.Serialization;
@{string data = new JavaScriptSerializer().Serialize(Model);}
@section scripts{
<script src="~/Scripts/knockout-3.3.0.js"></script>
<script src="~/Scripts/knockout.mapping-latest.js"></script>
<script src="~/Scripts/BlogViewModel.js"></script>
<script type="text/javascript">
var blogViewModel = new BlogViewModel(@Html.Raw(data));
ko.applyBindings(blogViewModel);
</script>
}
<div class="well well-sm">
<div class="tabbable-panel">
<div class="tabbable-line">
<ul class="nav nav-tabs">
<li class="active">
<a href="#tab_default_trends" data-toggle="tab">
Its Trending!
</a>
</li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="tab_default_trends">
<div class="container">
<div class="col-md-12" data-bind="foreach: blogViewModel">
<h3>
<a href="#" class="btn-link" data-bind="text: BlogName">
</a>
</h3>
<p data-bind="text: SmallDescription">
</p>
<div>
<span class="badge" data-bind="text: CreationDate"></span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>