使用ASP.NET Razor

时间:2016-11-29 11:19:12

标签: c# asp.net-mvc razor

我正在测试我是否通过我的结果列表正确迭代。为此,我创建了一个PartialView,用{Nice}创建了一个新的Div。正如您在图像中看到的那样,我确信有100个结果,但似乎Foreach循环不起作用。我应该以不同的方式进行迭代吗?

enter image description here

Webresult:

enter image description here

代码:

Controller(FeedController.cs)

    public ActionResult Index()
    {
        return View();
    }

    public ActionResult _Feed()
    {
        return PartialView(getStatusses());
    }

    private List<LinqToTwitter.Status> getStatusses()
    {
        //Code to get tweets
    }

查看(Index.cshtml)

@{
    ViewBag.Title = "Index";
}

<h2>Index</h2>

<div>
    @{ 
        Html.Action("_Feed");
    }
</div>

PartialView(_Feed.cshtml)

@model List<LinqToTwitter.Status>

<div id="FeedPosts">
    @foreach (var item in Model)
    {
        <div>
            Nice
        </div>
    }
</div>

1 个答案:

答案 0 :(得分:3)

调用Html.Action()时,您需要指示Razor使用@符号将操作结果附加到输出中:

@Html.Action("_Feed");

否则,它只会返回您不会使用的MvcHtmlString

即使在代码块(@{...})内进行调用,这也适用:

@{
    @Html.Action("_Feed");
}

请参阅MSDN