C# 要在行上显示的嵌套foreach
在C#中,我尝试使用嵌套的C# 要在行上显示的嵌套foreach,c#,asp.net-mvc,foreach,C#,Asp.net Mvc,Foreach,在C#中,我尝试使用嵌套的foreach来显示文章列表。我得到的平面HTML每3篇文章需要一个 我最初只显示文章的代码如下所示: @foreach (var article in Model) { <div class="spanthird col"> <div class="well"> <article>
foreach
来显示文章列表。我得到的平面HTML每3篇文章需要一个
我最初只显示文章的代码如下所示:
@foreach (var article in Model)
{
<div class="spanthird col">
<div class="well">
<article>
<h3>@article.UrlStringDisplay</h3>
<div class="date">@article.Date.ToString("dd MMMM yyyy")</div>
<a href="@Url.RouteUrl("PressReleases", new {id = article.UrlString, Action = "article", Controller = "PressReleases"})" class="btn btn-primary">Read more</a>
</article>
</div>
</div>
}
我快到了。我只需要朝正确的方向轻推一下。你在这方面做得太复杂了
试试这个:
int row = 1;
@foreach (var article in Model)
{
@if(row == 1)
@:<div class="row">
<div class="spanthird col">
<div class="well">
<article>
<h3>@article.UrlStringDisplay</h3>
<div class="date">@article.Date.ToString("dd MMMM yyyy")</div>
<a href="@Url.RouteUrl("PressReleases", new {id = article.UrlString, Action = "article", Controller = "PressReleases"})" class="btn btn-primary">Read more</a>
</article>
</div>
</div>
@if(row == 3)
@:</div>
<% row++; %>
@if(row == 4)
<% row = 1; %>
}
@if(i != 1)
@:</div>
int行=1;
@foreach(模型中的var文章)
{
@如果(行==1)
@:
@如果(行==3)
@:
@如果(行==4)
}
@如果(i!=1)
@:
u在这方面做得太复杂了试试这个:
int row = 1;
@foreach (var article in Model)
{
@if(row == 1)
@:<div class="row">
<div class="spanthird col">
<div class="well">
<article>
<h3>@article.UrlStringDisplay</h3>
<div class="date">@article.Date.ToString("dd MMMM yyyy")</div>
<a href="@Url.RouteUrl("PressReleases", new {id = article.UrlString, Action = "article", Controller = "PressReleases"})" class="btn btn-primary">Read more</a>
</article>
</div>
</div>
@if(row == 3)
@:</div>
<% row++; %>
@if(row == 4)
<% row = 1; %>
}
@if(i != 1)
@:</div>
int行=1;
@foreach(模型中的var文章)
{
@如果(行==1)
@:
@如果(行==3)
@:
@如果(行==4)
}
@如果(i!=1)
@:
这是我能想到的最干净的:
@for (int i = 0; i < Model.Count; i+=3)
{
<div class="row">
@foreach (var article in Model.Skip(i).Take(3))
{
<div class="spanthird col">
<div class="well">
<article>
<h3>@article.UrlStringDisplay</h3>
<div class="date">@article.Date.ToString("dd MMMM yyyy")</div>
<a href="@Url.RouteUrl("PressReleases", new {id = article.UrlString, Action = "article", Controller = "PressReleases"})" class="btn btn-primary">Read more</a>
</article>
</div>
</div>
}
</div>
}
@for(int i=0;i
这是我能想到的最干净的:
@for (int i = 0; i < Model.Count; i+=3)
{
<div class="row">
@foreach (var article in Model.Skip(i).Take(3))
{
<div class="spanthird col">
<div class="well">
<article>
<h3>@article.UrlStringDisplay</h3>
<div class="date">@article.Date.ToString("dd MMMM yyyy")</div>
<a href="@Url.RouteUrl("PressReleases", new {id = article.UrlString, Action = "article", Controller = "PressReleases"})" class="btn btn-primary">Read more</a>
</article>
</div>
</div>
}
</div>
}
@for(int i=0;i
foreach(在???中的var行)
应该有什么?你什么意思突然冒出来?我可以看出它不喜欢这样一个事实,即在:)中的更新和添加数据之后没有任何内容。你在用HTML做什么?它没有打印出来或保存在任何变量中。foreach(变量行在???)
应该有什么?你什么意思突然冒出来?我可以看出它不喜欢这样一个事实,即在
:)中的更新和添加数据之后没有任何内容。你在用HTML做什么?它没有打印出来或保存在任何变量中。这有一个轻微的错误-如果项目是5,则第二个
将没有结束标记。我收到此代码分析器错误消息的错误消息:预期为“{”,但找到了“@”。块语句必须包含在“{”和“}”中。您不能在CSHTML页面中使用单语句控制流语句。这有一个轻微的错误-如果项目为5,则第二个
将没有结束标记。我收到此代码分析器错误消息时出错:应为“{”,但找到“@”。块语句必须包含在“{”和“}”中。不能在CSHTML页面中使用单语句控制流语句。