ios mvc 中model强转换是怎么写的
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ios mvc 中model强转换是怎么写的相关的知识,希望对你有一定的参考价值。
参考技术A 可以对应多model,需要多件一个累,你现在有两个个model, DeviceInfoModel和UploadImageModel,你一个view需要都返回他们,你多建一个类就好。如: Public class model2 Public List listget;set; Public DeviceInfoModel listget;set; ...5.MVC框架开发(强类型开发,控制器向界面传递数据的几种方法)
界面表单中的表单元素名字和数据库表的字段名相一一映射(需要哪个表的数据就是那个表的模型(Model))
在View页面中可以指定页面从属于哪个模型
注:以上的关系可以通过MVC的强类型视图开发来解决我们的开发代码的智能感知
1.强类型视图开发的步骤
1)在页面中指定强类型的类型(一定是引用类型),代码:例:
@model List<MyMVCBookShop.Models.Book>
2)从控制器传强类型的数据到View视图里,那么就必须保证传入的数据一定和强类型视图中定义的类型相一致,例:
MyBookShopContext bookshop = new MyBookShopContext(); public ActionResult Index() { List<Book> m = bookshop.Books.OrderBy(p => p.Id).Take(16).ToList(); return View(m); }
3)在视图页里应用它的Model属性,例:
@{ foreach (var item in Model) { <li><a href="/Book/[email protected]">@item.Title</li> } }
2.控制器向界面传递数据的几种方法
1)通过强类型传递
2)通过ViewBag传递,它是动态解析类型,在运行的时候会自动解析是什么类型,编写的时候并不知道类型
3)通过ViewData传递,它是集合的方式存储(以键值对的方式存储),在界面使用时先转换后使用,例:
//在控制器当中 MyBookShopContext bookshop = new MyBookShopContext(); [HttpGet] public ActionResult Index() { List<Category> ListCstegory = bookshop.Categories.OrderBy(p => p.Id).ToList(); ViewData["Category"] = ListCstegory; return View(); } //在View页面中 <ul class="black"> @{ List<Category> listcate = ViewData["Category"] as List<Category>; foreach (var item in listcate) { <li><a href="/Book/List/@item.Id">@item.Name</a></li> } } </ul>
4)通过TempData来传递数据(一般主要用于不同Action之间传递数据),TempData只保留一次数据,也是以键值对的方式存储数据
返回值为:return RedirectToAction("另一个Action名");这样TempData只能读取一次数据
总结ViewBag,ViewData,TempData三者之间的区别?
以上是关于ios mvc 中model强转换是怎么写的的主要内容,如果未能解决你的问题,请参考以下文章
Java 所有对象强转到Object之后,都能够完整的强转回去吗
List<String> 转换成List<Object> 这一类的强转有啥隐患?