Mvc5 控制器,视图简单说明
本系列会比Mvc4更详细。Mvc4记录或没记录的东西这里也会提到。
控制器
自动装配:
一般自动装配对于添加的时候比较好用
视图:
控制器返回的视图,其实就是一些静态的HTML。动态性不好,从控制器传递少量数据,最简单使用 ViewBag。只适用于少量数据。
强类型视图
开始学习的时候觉得 ViewBag还行,一到写项目的时候你就会觉得ViewBag很不方便。
ViewBag的不足
因为 ViewBag是动态解析的,每次用的时候需要转下行
再升级一点,不过这个时候你是不能打点来输出属性的,因为是动态解析的,只要当运行的时候才会解析,才会报错。dynamic=var
这个时候就需要我们的强类型来完善上面的不足了。
控制器向视图传值: ViewBag和ViewData的区别
ViewData 更像一种特殊的字典类型。
ViewBag 则是动态解析的。
视图模型
添加视图
Razor视图引擎
代码表达式
Razor中的核心转换字符是 @ ,Razor很智能使其非常的受欢迎。智能:大部分可以自己判断是属性还是显示的字符。
HTML编码 避免XSS攻击,后面的文章中会详细介绍
Razor语法示例
布局 等同于 web Forms里面的母版页
①新建一个MVC5的布局页 SiteLayoutPage.cshtml 布局页可以看作一个特别的视图。
②创建与之关联的视图
Index页面我们做了关联很好理解,Test页面我们没有做关联也可以关联上。那是因为有个 _ViewStart.cshtml 页面
只在Index里面声明Footer节而不再Test里面声明
打开Test就会报错
指定部分视图
①创建一个返回部分视图的方法
②添加视图
部分视图一般用来进行局部更新非常的好用。把需要变得的HTML放到局部视图中,然后利用Ajax进行更新非常的常见。
Index页面:
布局页:
Mvc5 控制器,视图简单说明的更多相关文章
- .NET MVC 获取 当前请求的 控制器/视图/区域 的名字
.NET MVC 在action中或过滤器中或视图中,分别如何获取 当前请求的 控制器/视图/区域 的名字 1)过滤器中的: public class CMSAttribute : Filter ...
- ios -将navigationbar的translucent属性设为No后,子控制器视图整体下移问题
如果不将navigationbar.translucent = YES 会觉得颜色很浅,因为这是半透明状态 若navigationbar.translucent = NO,颜色问题解决,但是子控制器视 ...
- android菜鸟学习笔记31----Android使用百度地图API(二)获取地理位置及地图控制器的简单使用
1.获取当前地理位置: Android中提供了一个LocationManager的类,用于管理地理位置.不能通过构造函数获取该类的实例,而是通过Context的getSystemService(): ...
- 将navigationbar的translucent属性设为No后,子控制器视图整体下移问题
如果不将navigationbar.translucent = YES 会觉得颜色很浅,因为这是半透明状态 若navigationbar.translucent = NO,颜色问题解决,但是子控制器视 ...
- MVC视图与控制器分离简单描述
一,控制器 CheckIndexAreaRegistration.cs public class CheckIndexAreaRegistration : AreaRegistration { pub ...
- MVC5控制器、路由、返回类型、选择器、过滤器
ASP.NET MVC5 学习笔记-1 控制器.路由.返回类型.选择器.过滤器 [TOC] 1. Action 1.1 新建项目 新建项目->Web->Asp.net Web应用程序, ...
- 学习总结------Servlet控制器的简单运用
前言: 今天将简单的模拟 MVC模式 对Servlet控制器运行 若有不好或不对的地方,欢迎各位大神进行指导! 1.MVC模式(图) MVC全名是Model View Controller,是模型(m ...
- Spring MVC(八)--控制器接受简单列表参数
有些场景下需要向后台传递一个数组,比如批量删除传多个ID的情况,可以使用数组传递,数组中的ID元素为简单类型,即基本类型. 现在我的测试场景是:要从数据库中查询minId<id<maxId ...
- iOS弹出底部视图简单实现
- 项目基本目录 其中xib文件用来自定义需要弹出的视图. 在主控制器里设置popview的frame等信息代码如下: 底部视图(popview)初始化放在父类视图的最顶部或者说是整个屏幕的最底部,宽 ...
随机推荐
- DEM、DSM、DOM 名词解释
1.DEM(Digital Elevation Matrix) 数字高程矩阵. 数字高程模型(Digital Elevation Model,缩写DEM)是一定范围内规则格网点的平面坐标(X,Y)及其 ...
- C++程序设计基础(5)sizeof的使用
1.知识点 (1)sizeof是一个单目运算发,而不是一个函数,其用于获取操作数所占内存空间的字节数. (2)sizeof的操作数可以使类型名,也可以是表达式,如果是类型名则直接获得该类型所占字节数, ...
- Javascript模块化编程(一)模块的写法最佳实践六、输入全局变量 独立性是模块的重要特点,模块内部最好不与程序的其他部分直接交互。 为了在模块内部调用全局变量,必须显式地将其他变量输入模块。
Javascript模块化编程,已经成为一个迫切的需求.理想情况下,开发者只需要实现核心的业务逻辑,其他都可以加载别人已经写好的模块但是,Javascript不是一种模块化编程语言,它不支持类clas ...
- Linux防火墙/iptables使用
iptables是linux下的防火墙组件服务,这两天一直使用,总结一下使用方法: 1.检查iptables是否安装 rpm -qa|grep iptables 如果没有安装该组件,可以通过yum i ...
- ASP.NET之Request和Response对象
经过了牛腩新闻公布系统和html的学习对B/S开发的流程有了些理解.前面尽管用到了非常多知识.但对制作网页仅仅能说知其然.当学到asp.net视频中的解说才干够说開始知其所以然了. 今天来说说clie ...
- hibernate注解JPA
1.JPA与hibernate 什么是JPA ? java persistence api :java持久化api,同一的ORM规范,是由sun公司指定的规范接口,hibernate实现了JPA规范. ...
- 弱类型dynamic与var
dynamic与var都可代替任何类型 var关键字是C# 3.0开始新增的特性,称为推断类型. 1.必须在定义时初始化 2.一但初始化完成就不能再给变量赋与初始化值类型不同的值 3.var要求是局部 ...
- Nginx集群(负载均衡)
一.集群介绍 1.传统web访问模型 (1)传统web访问模型完成一次请求的步骤 1)用户发起请求 2)服务器接受请求 3)服务器处理请求(压力最大) 4)服务器响应请求 (2)传统模型缺点 单点故障 ...
- unity获取相机视窗口大小
using UnityEngine; using System.Collections; public class CameraView : MonoBehaviour { private Camer ...
- (转)Android新的menu实现——ActionMode
Android的menu有多种实现方式,以前写过一篇Android中五种常用的menu(菜单),这里介绍一种新的menu实现方式:ActionMode.ActionMode是Android 3.0以后 ...