目录

一:重载方法的调用

二:数据的传递

三:生成控件

四:显示加载视图

五:强类型视图

六:@Response.Write() 和 @Html.Raw()区别

七:视图中字符串的输入

八:模板页

一:重载方法的调用

同一个控制器内的同名方法调用,可以用HttpGet 和HttpPost区分。

[HttpGet]
public void request(int id = )
{
Response.Write("get 请求成功~");
} [HttpPost]
public void request(Models.Classes c = null)
{
Response.Write("post 请求成功~取到值:" + c.CName + " " + c.CImg);
}

二:数据的传递

控制器向视图传递数据的方法:

1.ViewBag 2.ViewData 3.TempData 4.Model

TempData 不允许添加重复的 key

后台的赋值:

 //1.ViewBag
ViewBag.bag = "ViewBagbag";
//2.ViewData
ViewData.Add("key", "viewdata");
//3.TempData
if (!TempData.Keys.Contains("temp"))
TempData.Add("temp", "tempdata"); //不能重复 添加 相同的 键
//4.Model
Models.Classes cl = new Models.Classes() { CName = "model name" }; //数据
return View(cl);

前台的取值:

ViewBag : @ViewBag.bag
<br />
ViewData : @ViewData["key"]
<br />
TempData : @TempData["temp"]
<br />
强类型视图: @Model.CName
<br />

这里要说的是,Model 类型的值  其实等效于  ViewData.Model

//4.Model
ViewData.Model = new Models.Classes() { CName = "ViewData.Model" };
//等效于
Models.Classes cl = new Models.Classes() { CName = "model name" }; //数据
return View(cl);

三:生成控件

前台视图 可以 通过 @Html.DropDownList 绑定后台ViewData数据 生成下拉框控件

后台代码:

ViewData.Add("myselect", new List<SelectListItem>() {
new SelectListItem() { Text = "值2", Value = "zhier" },
new SelectListItem() { Text = "值1", Value = "zhiyi" }
});

前台视图:

生成下拉框控件:@Html.DropDownList("myselect", "值一")

网页源码:

<select id="myselect" name="myselect"><option value="">值一</option>
<option value="zhier">值2</option>
<option value="zhiyi">值1</option>
</select>

四:显示加载视图

视图加载可以分为 默认加载与控制器同名的 视图, 也可以显示加载自己指定的 视图。

public ActionResult setData()
{
return View(); //加载默认 ActionResult 方法 同名的 视图 setData.cshtml
//return View("Index"); // 显示加载 Index.cshtml 视图 注意:不要带后缀 .cshtml
}

五:强类型视图

在视图页面 定义 model 强类型 ,这样可以方便 编译器 给出 只能提示 ,仅此而已。

@model _1MVC学习.Models.Classes

强类型视图: @Model.CName

六:@Response.Write() 和 @Html.Raw()区别

前台:

Html.Raw:
@Html.Raw("Html.Raw")
<br />
Response.Write: 这里输出到最上面了
@{
Response.Write("Response.Write输出~");
}

页面源码:

Response.Write输出~

<!DOCTYPE html>

<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>setData</title>
</head>
<body>
<div> Html.Raw:
Html.Raw
<br />
Response.Write: 这里输出到最上面了

七:视图中字符串的输入

在视图页面Razor语法 输入 “纯”字符串 方法:

1. <text>标签 2.@:

@{
<text>字符串一</text>
}
<br />
字符串二
<br />
@{
@:字符串三
}

页面源码没有任何标签 包住

     字符串一

        <br />
字符串二
<br />
字符串三

八:模板页

在添加视图的时候  选择 勾选 使用布局或模板页

使用了模板页的视图:  

@{
//标题
ViewBag.Title = "mby";
} <h2>我使用了模板页</h2> @*
这里是注释
@section 可以指定使用哪个“部分” 对应 模板页 的位置 @RenderSection("hhh", required: false)
required 是否为必须填入
除了 @section 的其余部分 全部填充到 模板页的 @RenderBody() 位置 *@ @section hhh{
我只是一个小坑而已啦~~~
}

模板页代码(_Layout.cshtml):

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<title>@ViewBag.Title</title> </head>
<body>
<h1>模板页</h1>
@RenderBody() @RenderSection("hhh", required: false)
</body>
</html>

说明:此类文章仅供本人学习记录使用。如有2B的错误,欢迎指出。不喜勿喷!

MVC学习二:基础语法的更多相关文章

  1. JavaScript学习02 基础语法

    JavaScript学习02 基础语法 JavaScript中很多基础内容和Java中大体上基本一样,所以不需要再单独重复讲了,包括: 各种算术运算符.比较运算符.逻辑运算符: if else语句.s ...

  2. less学习:基础语法总结

    一. less是什么 Less 是一门 CSS 预处理语言,它扩充了 CSS 语言,增加了诸如变量.混合(mixin).函数等功能,让 CSS 更易维护.方便制作主题.扩充. 注意1):less使用. ...

  3. JavaScript学习笔记-基础语法、类型、变量

    基础语法.类型.变量   非数字值的判断方法:(因为Infinity和NaN他们不等于任何值,包括自身) 1.用x != x ,当x为NaN时才返回true; 2.用isNaN(x) ,当x为NaN或 ...

  4. Python学习①. 基础语法

    Python 简介 Python 是一种解释型,面向对象的语言.特点是语法简单,可跨平台 Python 基础语法 交互式编程 交互式编程不需要创建脚本文件,是通过 Python 解释器的交互模式进来编 ...

  5. 真香,理解记忆法学习Python基础语法

    这篇文章很难写!我最开始学 Python,和大多数人一样,是看的菜鸟教程: 在写完这篇文章的第一遍后,我发现并没有写出新意,很可能读者看到后,会和我当初一样,很快就忘了.我现在已经不是读者而是作者了, ...

  6. ASP.NET MVC 4.0 学习1-C#基础语法

    1,方法多載,相同的方法名稱,不同的參數類型.數量 class Program { static void Main(string[] args) { Program newObject = new ...

  7. 学习fortran77基础语法

    Program ParamaterDefine Implicit None C FORTRAN变量名和关键字不区分大小写.但调用外部函数的话,需要在编译选项里指定 c 大小写等选项 因为链接器是区分大 ...

  8. python学习之基础语法

    一.缩进 学习 Python 与其他语言最大的区别就是,Python 的代码块不使用大括号 {} 来控制类,函数以及其他逻辑判断.python 最具特色的就是用缩进来写模块. 缩进的空白数量是可变的, ...

  9. Python学习--Python基础语法

    第一个Python程序 交互式编程 交互式编程不需要创建脚本文件,是通过 Python 解释器的交互模式进来编写代码. linux上你只需要在命令行中输入 Python 命令即可启动交互式编程,提示窗 ...

随机推荐

  1. H5(一)

    HTML5目前最新的规范(标准)是2014年10月推出   2005年左右出现HTML5版本(非标准)     W3C组织(两个组织定义H5规范)   学习(研究)HTML5是学习未来(将来主流)   ...

  2. Unity Cookie

    1   在Unity里面,选择脚本单击左键打开 Sync Mono Development  这样就可以打开整个工程的脚本文件 进而才能在脚本中继续进行切换      Mesh    MeshFilt ...

  3. Orchard教程索引页

    Orchard官方教程(译)索引 链接标注 原文 则表示未译,其他带有中文标题的表示译文内容. 入门 安装Orchard--Installing Orchard 通过zip包手动安装Orchard-- ...

  4. 激光打印机的Color/paper, Xerography介绍

    Color Basic 看见色彩三要素: 光源,物体,视觉 加色色彩模型:R,G,B 多用于显示器 减色色彩模型:C,M,Y,K 多用于打印复印 Paper 东亚地区常用A系列标准用纸,在多功能一体机 ...

  5. 我的微信小程序入门踩坑之旅

    前言 更好的阅读体验请:我的微信小程序入门踩坑之旅 小程序出来也有一段日子了,刚出来时也留意了一下.不过赶上生病,加上公司里也有别的事,主要是自己犯懒,就一直没做.这星期一,赶紧趁着这股热乎劲,也不是 ...

  6. web适配问题

    bootstrap模板为使IE6.7.8版本(IE9以下版本)浏览器兼容html5新增的标签,引入下面代码文件即可. <script src="https://oss.maxcdn.c ...

  7. MIT 6.828 JOS学习笔记17. Lab 3.1 Part A User Environments

    Introduction 在这个实验中,我们将实现操作系统的一些基本功能,来实现用户环境下的进程的正常运行.你将会加强JOS内核的功能,为它增添一些重要的数据结构,用来记录用户进程环境的一些信息:创建 ...

  8. Android自定义组件

    [参考的原文地址] http://blog.csdn.net/l1028386804/article/details/47101387效果图: 实现方式: 一:自定义一个含有EditText和Butt ...

  9. -webkit-tap-highlight-color

    css3中有henduo 新属性,tap-highlight-color;是用于元素在移动设备IOS和adnroid上被触发点击事件时,响应的背景框的颜色. 例如在Adnroid版本的微信中,点击a标 ...

  10. 【滤波】标量Kalman滤波的过程分析和证明及C实现

    摘要: 标量Kalman滤波的过程分析和证明及C实现,希望能够帮助入门的小白,同时得到各位高手的指教.并不涉及其他Kalman滤波方法. 本文主要参考自<A Introduction to th ...