我目前正在使用Entity Framework 5和MVC 5从视图中提取url列表。我需要在此数据库视图中填充视图中的url列表。目前我有:
存储库:
public class LinkRepository
{
private readonly LinkLibrary _entities = new LinkLibrary ();
public LinkRepository()
{
_entities = new LinkLibrary ();
}
public List<LinkModels> RetrieveStateLink(string year)
{
return
_entities.vw_URLLibrary.Where(s => s.YEAR.Equals(year) && s.URL_TYPE.Equals("United States")).Select(m => new LinkModels()
{
UrlLink = m.LinkLocation
}).ToList();
}
}
模型
public class LinkModels
{
public string LinkYear { get; set; }
public string LinkState { get; set; }
public string UrlLink { get; set; }
public string LinkType { get; set; }
public List<string> ListOfUrls{ get; set; }
}
控制器
public ActionResult GetStateLinks()
{
var stateLink = new List<string>();
var model = rr.RetrieveStateLinks("2014").Select(m=> m.UrlLink).ToList();
foreach (var s in model)
{
stateLink.Add(s);
}
var rm = new LinkModels();
rm.ListOfUrls = stateLink;
return View(rm.ListOfUrls);
}
查看
<ol>
@foreach (var item in Model.ListOfUrls)
{
<li>
@Html.ActionLink("state", "GetStateLinks", new { mystring = item })
</li>
}
</ol>
我不确定如何将其传递到视图中以显示它:
Alabama.aspx Georgia.aspx
答案 0 :(得分:0)
你应该写一下
<ol>
@foreach (var item in Model.ListOfUrls)
{
<li>
<a href="@item">GetStateLinks</a>
</li>
}
</ol>
没有必要使用Html.ActionLink
,因为它的目的是直接链接到MVC控制器操作,而不是URL。