我需要的是在我的视图中的各种链接中显示Area_Name。我可以将Area_Name分配给变量,然后在视图中的每个链接中显示该变量,而不是每次重复下面的相同循环吗?
的ViewData
filterContext.Controller.ViewData["Categories"] = from m in _dataContext.Categories where m.Area_ID == SectionID select m;
查看页面
样式表
<%
foreach (var c in (IEnumerable<Categories>)ViewData["Categories"]) { %>
<link href="../../Content/<%= c.Area_Name %>/Site.css" rel="stylesheet" type="text/css" />
<% } %>
图片
<%
foreach (var c in (IEnumerable<Categories>)ViewData["Categories"]) { %>
<img src="../../Content/images/<%= c.Area_Name %>/slide1.jpg" />
<img src="../../Content/images/<%= c.Area_Name %>/slide2.jpg" />
<img src="../../Content/images/<%= c.Area_Name %>/slide3.jpg" />
<% } %>
答案 0 :(得分:0)
使用第二个for-each或for-loop?
像这样:
<% foreach (var c in (IEnumerable<Categories>)ViewData["Categories"]) {
for ( int i = 0 ; i < 100; i ++ )
{
%>
<img src="../../Content/images/<%= c.Area_Name %>/slide<%= i %>.jpg" />
<%
}
<% } %>
虽然很难确切地知道你的意思..
答案 1 :(得分:0)
或许创建一个强类型的viewData 文件,其中包含您拥有的每个AreaName的属性。这样做的缺点是,当您添加一个新类别时,viewData类和视图将不会以与当前代码相同的方式获取这些更改。