首页 新闻 搜索 专区 学院

asp.net mvc 列表显示

0
悬赏园豆:5 [已关闭问题] 关闭于 2013-05-28 16:45

我是asp.net mvc初学者,有点不明白,比如一个Url:

http://localhost:4690/home/detail/27

也就是home/view.aspx页面,这个页面里面有很多个新闻列表,比如新闻1、新闻2、新闻3,那在HomeController里面该怎么写呢?不会是

public class HomeController:Controller

{

   public ActionResult Detail(int? id)

  {

      ViewData["新闻1"]=this.GetNew1List();     

      ViewData["新闻2"]=this.GetNew2List();     

      ViewData["新闻3"]=this.GetNew3List();

       return view();

   }

}

请教各位,该咋写呢?

king2003的主页 king2003 | 初学一级 | 园豆:161
提问于:2013-05-27 17:15
< >
分享
所有回答(2)
1

foreach(var item in ViewData["新闻1"])

{

.......................

}

不过我觉得不要用ViewData,自己写个ViewModel

public IQueryable<New> ListOne{get;set;}

public IQueryable<New> ListTwo{get;set;}

这样明晰一点不是吗

BorgChen | 园豆:11 (初学一级) | 2013-05-27 19:40

除了数据源的存放方式外,我想说,就算一个小网站的首页都有十几个栏目列表,每个栏目列表的数据源,如果都是这个的 ListOneListTwoListThreeeListFour......,何其多吖?

支持(0) 反对(0) king2003 | 园豆:161 (初学一级) | 2013-05-28 09:06

而且每个的ListOneListTwoListThreeeListFour......,都要写在 Index() 里面,来设置值,那这个action会胀得多大吖?

支持(0) 反对(0) king2003 | 园豆:161 (初学一级) | 2013-05-28 09:07

@king2003: 那就用PartialView引进来。。。

支持(0) 反对(0) BorgChen | 园豆:11 (初学一级) | 2013-06-03 11:50
0

对,用一个数据对象就可以了。

Supper_litt | 园豆:981 (小虾三级) | 2013-05-28 11:06
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册