正式学习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的呈现]的功能就是:通过 ...
随机推荐
- [LC] 270. Closest Binary Search Tree Value
Given a non-empty binary search tree and a target value, find the value in the BST that is closest t ...
- 401认证钓鱼demo
<?php //@b4dboy if(!isset($_SERVER['PHP_AUTH_USER']) && !isset($_SERVER['PHP_AUTH_PW'])) ...
- LeetCode No.103,104,105
No.103 ZigzagLevelOrder 二叉树的锯齿形层次遍历 题目 给定一个二叉树,返回其节点值的锯齿形层次遍历.(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行). ...
- 分类算法之KNN分类
1.介绍 KNN是k nearest neighbor 的简称,即k最邻近,就是找k个最近的实例投票决定新实例的类标.KNN是一种基于实例的学习算法,它不同于贝叶斯.决策树等算法,KNN不需要训练,当 ...
- python版本不同,修改cmd下的默认版本
原文出处 https://blog.csdn.net/zyx_ly/article/details/93137014 感谢博主分享 即修改系统环境变量的位置,把想设置成为默认的上移即可
- iOS性能检测工具instrunments简单介绍
1.前提条件 在appstore中下载安装xcode 2.打开方式 3.页面元素介绍 3.电脑连接手机选中要测试的app 4.选中要测试哪项,双击进去,点击开始进行监控测试 5.主要介绍一下三项 第一 ...
- 吴裕雄--天生自然 HADOOP大数据分布式处理:安装配置JAVA
tar -xzvf jdk-8u151-linux-x64.tar.gz -C /usr/local/src sudo vim /etc/profile .编辑/etc/profile # JAVA ...
- 学习python-20191203-Python Flask高级编程开发鱼书_第02章 Flask的基本原理与核心知识
视频01: 做一个产品时,一定要对自己的产品有一个明确的定位.并可以用一句话来概括自己产品的核心价值或功能. 鱼书网站几个功能 1.选择要赠送的书籍,向他人赠送书籍(价值功能,核心价值的主线): 2. ...
- 会议信息|CNKI|AIAA|万方|AIP|CNKI|EI|CPCI|BP|INSPEC
会议论文: 学术文献的三大支柱是期刊.专利和学位论文.会议论文是新的所以发文章快,灰色的,有些只有摘要,所以不容易获取. 有以下二次文献数据库,仅有摘要: CPCI BP:生物医学类 INSPEC在W ...
- java中的锁——列队同步器
队列同步器 队列同步器(AbstractQueuedSynchronizer)为实现依赖于先进先出 (FIFO) 等待队列的阻塞锁和相关同步器(信号量.事件,等等)提供一个框架.此类的设计目标是成为依 ...