在ASP.NET MVC视图中,尝试显示列表中的文本,该列表一次显示一个文本。
脚本完成了它的工作,但由于某种原因,将List转换为JSON对象失败。List对象到达具有正确值的视图,但转换尝试返回一个空的JSON对象。
视图:
@model List<WebSiteUpravitelj.Models.BlogModels.Objava>
<a href="/Blog/Objave">
<div>
<h2>Novosti</h2>
@if (Model != null)
{
<script>
$(document).ready(
function () {
var list = "@Html.Raw(Json.Encode(Model))";
for (var i = 0; i < 2; i++)
{
$('#spinNaslov').slideUp(300).delay(800).fadeIn(400).text(list[i].Naslov);
$('#spinBloger').delay(400).fadeIn(200).text(list[i].Korisnik + ', ' + list[i].Datum);
}
});
</script>
<div id="novostiSpin">
<h2 id="spinNaslov" style="text-align:center; color:#fed8e6;"></h2>
<span id="spinBloger" style="float:right; color:#999898; padding:5px;"></span>
</div><br />
}
else
{
<p>Trenutno nema novih objava u novostima.</p>
}
</div>
</a>
控制器:
public ActionResult _Novosti()
{
List<Objava> oList = Objava.Novosti();
return PartialView(oList);
}
型号
public class Objava:List<Objava>
{
public int id { get; set; }
public string Naslov { get; set; }
public string Datum { get; set; }
[AllowHtml]//System.Web.Mvc;
public string Sadrzaj { get; set; }
public string Korisnik { get; set; }
}
我想我做错了什么,但我真的不知道是什么。
请帮忙。
问题解决了,问题在模型中。Model Objave继承了List,因此在创建列表时,每次在对象中插入空的Property of List。从那里空的JSON对象。当转换为JSON时,其他属性(有值)将被忽略。在解决方案中,我删除了基本列表,并创建了用于创建列表的静态方法。现在一切都在运转。感谢您抽出时间