首页 新闻 会员 周边 捐助

ASP.NET MVC3.0中同一View如何返回多个Model或数据集

0
悬赏园豆:100 [已解决问题] 解决于 2011-05-10 11:36

请问ASP.NET MVC3.0中同一View如何返回多个Model或数据集,除了下面这篇文章中介绍了的方法,还有其他方法吗,还有就是如果页面中想要调用控制器中的方法一般是怎么做的,只能用ajax吗?请高手指点:

http://www.cnblogs.com/gsyifan/archive/2009/10/23/1588825.html

问题补充: 谢谢两位,我现在已经有了解决方案: 1、新建一个类封装多个List 2、用ViewVag 第二种方法很不错哦,推荐
乱世文章的主页 乱世文章 | 初学一级 | 园豆:147
提问于:2011-05-06 11:53
< >
分享
最佳答案
1

针对你的View要使用的Models组合出一个新的Model。

在客户端浏览器中运行的话,可以使用VB Script或Java Script调用Controller上的方法,或者使用超链接的形式。

收获园豆:60
Launcher | 高人七级 |园豆:45050 | 2011-05-06 11:57
非常感谢你的帮助,请问有示例代码或介绍这方面的资料文章吗?
乱世文章 | 园豆:147 (初学一级) | 2011-05-06 12:00
@乱世文章:MvcMusicStore,NerdDinner
Launcher | 园豆:45050 (高人七级) | 2011-05-06 12:35
其他回答(4)
0

我也认为Galactica 的做法是一个不错的做法,我最近也遇见过..

例如   

class UserInfoModel

class MessageInfoModel

则我们可以使用 UserMessageModel来对UserInfoModel 和 MessageInfoModel进行第二次的封装

class UserMessageModel

{

  public UserInfoModel //自己进行一下错误处理

  {

    get;

           set;

  }

      public MessageInfoModel //自己进行一下错误处理

  {

    get;

           set;

  }

 }

这样是可以达到效果的!再到网上找找看,如果有更好的办法贴出来分享一下..

收获园豆:40
山石晓月 | 园豆:267 (菜鸟二级) | 2011-05-06 13:18
0

2、用ViewVag 第二种方法很不错哦      这种方法在哪里有啊?

悠然自得 | 园豆:141 (初学一级) | 2011-07-02 21:40
1

我有这样做过,也是可以的。
在控制器里定义一个Dictionary 泛型类,再把要用到的不同模型加进去,额,直接贴代码吧。

控制器:

        public ActionResult Index()
{
IDictionary<string, object> test = new Dictionary<string, object>();

test.Add("StudentList", new List<StudentInfo>());

return View(test);
}

视图:

@model IDictionary<string, object>
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<title>我的个人主页</title>
</head>
<body>
<ul style="list-style: none; margin-left: 10px;">
@foreach (var m in (IList<EnglishDiary.Models.StudentInfo>)Model["StudentList"])
{
<li>@m.StuID</li>
<li>@m.StuName</li>
}
</ul>
</body>
</html>

嗯,这样就可以了。

べ_ 虫儿飞 | 园豆:205 (菜鸟二级) | 2011-12-23 16:32

@KuBiCoder: 这个方法不好吗? 为什么有人点反对了?你现在用的是什么方法?我现在想要输出2个list

支持(0) 反对(0) I-Can | 园豆:121 (初学一级) | 2014-06-12 09:26
0

同“ 悠然自得 ”的问题。

viewmodel应该是比较经典的从controller到view的解决方法

Alvin | 园豆:828 (小虾三级) | 2012-06-11 23:02

封装之后多个实体集合,怎么提交到controller呢?

支持(0) 反对(0) Elaine_Li | 园豆:161 (初学一级) | 2012-11-07 17:17
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册