我在我的模型中生成了一个rss链接列表,我希望在我的网页上显示这些链接。该模型工作正常,链接的显示在视图上正常工作。我的问题是,我想在2个并排列中显示链接。第一列中的前5个链接和第二列中的后5个链接。现在,我在每列中显示所有10个链接。我确信有一种简单的方法可以做到这一点,但我不确定如何做到这一点。任何帮助将不胜感激。
这是我的模特:
namespace OA.Models
{
public class Rss1
{
public string Link { get; set; }
public string Title { get; set; }
public string Description { get; set; }
}
public class Rss1Reader
{
private static string _blogURL = "http://www.test.com/blogs/news/feed/";
public static IEnumerable<Rss1> GetRss1Feed()
{
XDocument feedXml = XDocument.Load(_blogURL);
var feeds = from feed in feedXml.Descendants("item")
select new Rss1
{
Title = feed.Element("title").Value,
Link = feed.Element("link").Value,
Description = Regex.Match(feed.Element("description").Value, @"^.{1,180}\b(?<!\s)").Value
};
return feeds;
}
}
}
以下是我的观点:
@model IEnumerable<OA.Models.Rss1>
<table style="width: 80%;margin-left: auto;margin-right: auto;margin-top:10px;margin-bottom:25px;">
<tr>
<td>
<div id="RSSCOL1">
<span style="font-size:.9em;">
@foreach (var item in Model)
{
<a href="@item.Link" target="_blank">@item.Title</a><br />
}
</span>
</div>
</td>
<td>
<div id="RSSCOL2">
<span style="font-size:.9em;">
@foreach (var item in Model)
{
<a href="@item.Link" target="_blank">@item.Title</a><br />
}
</span>
</div>
</td>
</tr>
</table>
答案 0 :(得分:0)
实现此目的的最快方法是将第一个和第二个循环更新为此...
@foreach (var item in Model.Take(Model.Count()/2))
...
@foreach (var item in Model.Skip(Model.Count()/2))
但是,您可能需要考虑一个显示无序列表的循环,然后使用css将其放入列中。如果有人在手机上看你的页面而不是27英寸的屏幕怎么办?您可能希望列以不同方式显示。祝好运!请看这个链接:How to display an unordered list in two columns?