正式学习MVC 05
1、剃须刀模板razor的使用
1)混编
循环语法
@model List<MVCStudy.Models.Student>
@{
ViewBag.Title = "List";
} <h2>List</h2>
<!--循环遍历数组内容 c#与HTML混编-->
<ul> @foreach (var stu in Model)
{
<li>@stu.Name</li>
} </ul>
public ActionResult List()
{
return View(new List<Student> {
new Student()
{
Id = ,
Name = "Micky",
Age =
},
new Student()
{
Id = ,
Name = "Jese",
Age =
},
new Student()
{
Id = ,
Name = "Nick",
Age =
}
}); ;
}
razor模板的核心是@
@符号在最上面:声明
@+大括号:c#代码,内部可以声明变量等等
@model List<MVCStudy.Models.Student>
@{
ViewBag.Title = "List";
int a = ;
} <h2>List</h2>
<!--循环遍历数组内容 c#与HTML混编-->
<ul> @foreach (var stu in Model)
{
@(a+22) //需要加括号才能进行表达式的处理
<li>@stu.Name</li>
} </ul>
如果就想输出一个@,怎么做?请写两个@进行转移
输出一段html:
@model List<MVCStudy.Models.Student>
@{
ViewBag.Title = "List";
int a = ;
string html = @"<p style='color:red;'>你好<p>";
} <h2>List</h2>
<!--循环遍历数组内容 c#与HTML混编-->
<ul>
@@
@foreach (var stu in Model)
{
@(a+)
<li>@stu.Name</li>
} </ul>
@Html.Raw(html)
@*注释内容*@
2、区域
1)项目右键-添加-添加已搭建基架的新项-MVC-MVC5区域-命名新建
添加后区域相当于一个单独的MVC

我们添加控制器与视图后可以访问到它,但是原首页的路由出现了多个,无法访问,进行如下修改
找到项目的路由配置RouteConfig.cs文件修改
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
namespaces:new string[]
{
"MVCStudy2.Controllers"
}
);
添加namespaces,一个字符串数组,里面的值是项目的命名空间
2)区域路由跳转
链接名称,路由名称(在区域的路由文件内查看,跳转参数)
@{
ViewBag.Title = "Home Page";
}
<h1>项目首页</h1>
@Html.RouteLink("体育板块", "Sport_default", new { controller="Home",action="Index"})
3) 行为跳转
@{
ViewBag.Title = "Home Page";
}
<h1>项目首页</h1>
@Html.RouteLink("体育板块", "Sport_default", new { controller="Home",action="Index"})
@Html.ActionLink("行为跳转","About",new {需传送参数},htmlAttributes:new {所需html属性})
如果要使用a标签进行行为跳转,需要进行跳转连接的确定(Url.Action)
@{
ViewBag.Title = "Home Page";
}
<h1>项目首页</h1>
@Html.RouteLink("体育板块", "Sport_default", new { controller="Home",action="Index"})
@Html.ActionLink("行为跳转","About")
<a href="@Url.Action("About",new { from = "Index"})">跳转至About</a>
与上面类似,进行路由跳转也可以用a标签:
@{
ViewBag.Title = "Home Page";
}
<h1>项目首页</h1>
@Html.RouteLink("体育板块", "Sport_default", new { controller="Home",action="Index"})
@Html.ActionLink("行为跳转","About")
<a href="@Url.Action("About",new { from = "Index"})">跳转至About</a>
<a href="@Url.RouteUrl("Admin_default", new { controller="Home",action="Index",param="u can also add param"})">跳转至Admin路由</a>
正式学习MVC 05的更多相关文章
- 正式学习MVC 01
1.新建项目 点击创建新项目,选择ASP.NET web应用程序,对项目进行命名后点击创建. 截图如下: 取消勾选HTTPS配置 可选择空 + mvc 或直接选定MVC 2.目录结构分析 1) App ...
- 正式学习MVC 02
1.cookie 继续讲解MVC的内置对象cookie 相对不安全 1)保存cookie public ActionResult Index() { // 设置cookie以及过期时间 Respons ...
- 正式学习MVC 06
1.Model常用属性讲解 using System; using System.ComponentModel.DataAnnotations; namespace MVCStudy2.Models ...
- 正式学习MVC 04
1.ActionResult ActionResult是一个父类, 子类包括了我们熟知的 ViewResult 返回相应的视图 ContentResult 返回字符串 RedirectResult( ...
- 正式学习MVC 03
1.View -> Controller的数据通信 1) 通过url查询字符串 public ActionResult Index(string user) { return Content(u ...
- 白话学习MVC(十)View的呈现二
本节将接着<白话学习MVC(九)View的呈现一>来继续对ViewResult的详细执行过程进行分析! 9.ViewResult ViewResult将视图页的内容响应给客户端! 由于Vi ...
- 学习MVC之租房网站(二)-框架搭建及准备工作
在上一篇<学习MVC之租房网站(一)-项目概况>中,确定了UI+Service的“双层”架构,并据此建立了项目 接下来要编写Common类库.配置AdminWeb和FrontWeb 一.编 ...
- 白话学习MVC(八)Action的执行二
一.概述 上篇博文<白话学习MVC(七)Action的执行一>介绍了ASP.NET MVC中Action的执行的简要流程,并且对TempData的运行机制进行了详细的分析,本篇来分析上一篇 ...
- 白话学习MVC(九)View的呈现一
一.概述 本节来看一下ASP.NET MVC[View的呈现]的内容,View的呈现是在Action执行之后进行,Action的执行生成一个ActionResult,[View的呈现]的功能就是:通过 ...
随机推荐
- oracle_(第二课)监听器配置
一. 1.首先我们得安装好oracle数据库(上一课有讲) 再来看看我们没有监听器之前的文件 文件路径:%ORACLE_HOME%/NETWORK/ADMIN 2.关闭所有防火墙,win10的要特别注 ...
- java静态方法和静态字段
public class Dog{ public static void main(String[]args){ A a= new A(); a.add(); //java实例对象可以访问类的静态方法 ...
- Gson、jackson 序列化,反序列化(单个、集合)
实体类: package com.nf.redisDemo1.entity; public class News { private long id; private String title; pr ...
- CCS|ANSI|中华人民共和国标准化法|国标|ISO|IEC|Ieeexplore|
国家的标准的有效期,标龄是5年.强制性标准是是指为保障人体的健康.人身.财产安全的标准和法律.行政法规定强制执行的标准,如药品标准.食品卫生标准. CCS:分类法简写图 国际标准,比如美国国家标准AN ...
- WebElement--定位经验
通常,我们这页面中定位一个元素,如果HTML中明明有却定位不到,我们一定会从这两个方面考虑. 第一:是不是页面中有多个iframe/frame结构,很多情况下我们需要通过切换iframe/frame结 ...
- EXAM-2018-8-9
EXAM-2018-8-9 B 水题 注意理解题意 有坑 G 博弈 观察发现 总是会进行到最后两个,或者先手取完全部,再特判一下只有一张牌的情况 H 九连环 通过找规律 我们可以得出递推式: F[n] ...
- JDK和Spring中的设计模式
创建型 1)工厂方法 Collection.iterator() 由具体的聚集类来确定使用哪一个Iterator 2)单例模式 Runtime.getRuntime() 3)建造者模式 StringB ...
- OpenGL 保存bmp图像
今天我们先简单介绍Windows中常用的BMP文件格式,然后讲OpenGL的像素操作.虽然看起来内容可能有点多,但实际只有少量几个知识点,如果读者对诸如”显示BMP图象”等内容比较感兴趣的话,可能不知 ...
- VisualStudio使用HALCIN_NET控件
遵循以下步骤在一个应用中添加Halcon/.Net: 一. 定义工具箱 Halcon/.net 不仅提供了一个类库,而且提供了一个控件:HWindowControl,它包含一个显示图像处理结果的Hal ...
- require.ensure和require.context
require.ensure和require.context https://www.cnblogs.com/fantasy-zxf/p/6760390.html https://www.jiansh ...