MVC部分视图的巧用

View视图界面

 @{ Html.RenderAction("demo", "", new { id = ViewBag.id });}

  请求的控制器方法

 public ActionResult Index(int? id)
        {
             ViewBag.id = id;
            return View();
        }        

  部分视图方法

//这里它会找到视图,名字必须一样,如果不一样,就在下面指定
public PartialViewResult demo(string id) 
         { 

   //对数据库的一些操作
  //··········
  //··········
  //··········
  //··········
  //··········  
  //··········
   
      return PartialView();//返回部分视图,就是要展示在主视图上的数据内容板块
       }

  

这样的做法让多个界面可以共用,例如:

1、点击分类展示相关产品数据

2、点击品牌展示相关产品数据

3、搜索产品,展示数据

4、············

第一步:先确认好前端界面,以及数据使用的部分

第二步:将包含从数据库查询的数据html代码和相关展示操作代码一同复制到部分视图页面(部分视图是空的,直接将要展示的那一块复制进去,情况不同有可能需要引入命名空间 @using xxx)

第三步:主视图方法接收 

ViewBag.id = id;

//跳转到视图
 return View();

//在视图页面被空的区域,也就是被拿走的那一坨本来要展示数据的html代码里面放入
@{ Html.RenderAction("demo", "", new { id = ViewBag.id });}

第四步:在控制器里面创建相同名称的方法,名字必须一样,如果不一样,就在方法体里面指定


大功告成....


有时间再介绍TempData.....对需要参数类型不同的比较适合
原文地址:https://www.cnblogs.com/ncellit/p/5533705.html