首页 新闻 搜索 专区 学院

MVC3 里面 _Layout视图布局怎么使用数据?

0
悬赏园豆:5 [已解决问题] 解决于 2014-10-10 17:13

MVC3 里面 __Layout视图布局或母板页怎么使用数据?  布局没有控制器的,那怎么使用数据。

 

求例子

mvc3怎样在\Views\Shared\_Layout.cshtml页面中绑定数据库数据,貌似没有Controllers要自己新建吗?

yujinchao的主页 yujinchao | 菜鸟二级 | 园豆:248
提问于:2014-09-22 10:04
< >
分享
最佳答案
0

直接说方法吧:

1、直接用ViewBag,ViewData。然后再基于这个布局页的其他有Controller的页面进行赋值;(对于这种数据赋值,最好定义一个基类Controller来统一处理)

2、利用Html.Action,发起子请求;

3、利用JS动态请求数据(原理上,和子请求比较类似)

收获园豆:5
幻天芒 | 高人七级 |园豆:36662 | 2014-09-23 12:27

你好,【对于这种数据赋值,最好定义一个基类Controller来统一处理】,这个可以给个具体的例子吗?

比如说 新建了个 BaseController,其他的Controller 继承BaseController,那在 BaseController 里面要怎么写 _Layout.cshtml 页才能获取数据呢?

white-poplar | 园豆:202 (菜鸟二级) | 2016-11-23 01:10

@white-poplar: Layout很共享页面的ViewData这些东西。所以只需要把数据放在页面的ViewData,ViewBag中。

另外,你这应该是页面独有的数据,没有共性,就不要放在BaseController中。一般BaseController中就放一些用户信息之类的共通数据。

幻天芒 | 园豆:36662 (高人七级) | 2016-11-23 13:10
其他回答(3)
0

想怎么使用数据就怎么使用。

1、小数据SESSION,APPLICATION之类的。

2、AJAX加载

3、MODEL

爱编程的大叔 | 园豆:30753 (高人七级) | 2014-09-22 10:16
0

1、Session、Application数据,Cookie数据,静态数据,这个是Web系统都具备的。

2、通过ViewBag、ViewData传输数据

3、通过Model传输数据

519740105 | 园豆:5810 (大侠五级) | 2014-09-22 10:31
0

控制器里的代码拿到模板页里。这样速度更快哦,亲。有所要做的就是在试图的顶部加上

@

{

 List<xx>  entity_list=xxxxxxx;此处省略1行

 

 

}

<div>

@if(entity_list!=null  &&  entity_list.Count>0 )

{

//想怎么做就怎么做

 

 

}

</div>

--------------------------------------------------------------------当然这是比较死板的写法,代码很冗余。

所以非必要时刻,搞个js吧。专门访问控制器,取得数据,JS绑定。妥妥的。

贫民窟大侠 | 园豆:4272 (老鸟四级) | 2014-09-22 12:31
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册