MVC初体验-Razor和HtmlHelper(4)

1

动态改变路由规则,HtmlHelper的

如果使用了路由器中的默认路由,那么在浏览器的URL不会显式显示Controller的名字和Action的名字

输出

布表单

总结:本人感觉除了路由引用的可以使用HtmlHelper方法

其余的像布表单、一些其他的不建议使用这种混编代码。

确实增加了维护难度,并且前后端耦合了。

视图的数据从哪来?从行为来

怎么从行为向视图传数据,通过ViewData中的键值对

ViewBag是ViewData的简写,使用起来完全一样,实际就是一种动态字典类型

使用时在Action中对ViewData创造键值对

ViewData["id1"] = "My NAME IS ID1。";

然后在视图中使用Razor代码使用ViewData取值

@ViewData["id1"]

强类型页面

目的,使得在编译阶段就能发现页面视图的一些属性拼写错误

注意,这样一个页面就只能操作一个类型的对象

在页面视图最开始行增加

@model 命名空间.类名

即可。

如果要在页面强类型中使用多个类怎么处理呢?

那就需要重新封装一个类,这个类包含了多个需要处理的类型即可。

在视图中使用:

@ViewData.Model

就是页面强制指定的类型。

总结:

End

原文地址:https://www.cnblogs.com/LeeSki/p/12179443.html

时间: 2024-10-12 21:42:52

MVC初体验-Razor和HtmlHelper(4)的相关文章

ASP.NET MVC学习---(五)MVC初体验

经过之前n多的铺垫 我们已经大概了解了这个姓m名vc的家伙了 那么今天我们就来体验一把 怎么体验呢? 就来做一个小例子吧~ mvc增删改查的例子 数据库还是之前我们的老朋友 关系图: 表中的数据已填好 T_Users 将就着用着吧,哈哈 现在要求对T_Users表进行增删改查 开搞~ 回到之前新建的mvc项目 在Controllers文件夹下新建一个名为Home的空控制器 当浏览器请求Home下面的Index方法的时候返回什么? 当然是主页面啦 这里我们的主页面就是显示T_Users数据列表 代

MVC初体验-EF系列(CRUD)(20)

数据库数据:Northwind中的Region表 Region类是根据Region表自动生成的 后台代码: using System.Data.Entity; using System.Data.Entity.Migrations; using System.Linq; using System.Web.Mvc; using T1_EF.Models; namespace T1_EF.Controllers { public class RegionController : Controller

MVC初体验-过滤器(10)

主要有4中过滤器: 1.Authorization  身份验证过滤器 理解身份验证过滤器和无侵入式开发: 假如我这里有学生和教室两个对象,学生进入教室需要进行身份验证,如果在A学生上增加验证,那么在代码层面就构成了侵入式开发,需要修改学生A的代码,如果多了一个学生C,那么又需要继续增加验证代码,不合适: 如果在教室对象上增加身份验证代码,如果新增了教室D,那么身份验证又需要重写,同时也构成了侵入式开发: 所以最好的方案是不修改学生和教室,在它们中间加入一层中间验证,哪个教室需要身份验证,就给它加

MVC初体验-EF查询(Lambda的用法)(18)

使用数据库:NorthWind示例数据库 (链接:https://www.cnblogs.com/liverpool/p/4718042.html) 后台代码: namespace T1_EF.Controllers { public class CustomersController : Controller { // GET: Customers public ActionResult Index() { //NorthwindEntities northwind = new Northwi

MVC初体验-EF系列(总结)(23)

注意,增加,修改,删除的状态最终还是使用的状态版的,本质都是把数据附加到上下文,然后进行修改: 导航属性根据1对多或者多对1的关系,在生成类中的属性会分别生成一个集合属性或者一个标量属性: 是否禁用延时加载取决于数据量是否很大,数据变化是否十分频繁 End 原文地址:https://www.cnblogs.com/LeeSki/p/12267235.html

Razor和HtmlHelper的使用意义

Razor和HtmlHelper的使用意义 写这篇文档的目的是为了给初学MVC的同伴们介绍在MVC的View中的两个新概念,能有利于我们更快,更好的开发项目.一个是视图引擎,一个是HtmlHlper.这两个知识都不是新的,知识概念新而已,都是在我们学过的ASPX和 Html上做了改进,是我们编程更加容易. 一.区别ASPX和Razor 在ASP.NET MVC模式中,我们的视图引擎选择有两种:ASPX(ASP.NET),Razor. 1.ASP.net. 如果选择ASPX,那么选择的引擎其实就是

Xamarin.iOS开发初体验

Xamarin是一个跨平台开发框架,这一框架的特点是支持用C#开发IOS.Android.Windows Phone和Mac应用,这套框架底层是用Mono实现的. Mono是一款基于.NET框架的开源工程,包含C#语言编译器.CLR运行时和一组类库,能运行于Windows.Linux.Unix.Mac OS和Solaris.对于.NET程序员来说,Xamarin是走向安卓.iOS.Mac跨平台开发的神器,不仅能用熟悉的C#来开发,还能使用Visual Studio作为IDE.本文内容是Xamar

SignalR初体验

简介 ASP .NET SignalR[1]  是一个ASP .NET 下的类库,可以在ASP .NET 的Web项目中实现实时通信.什么是实时通信的Web呢?就是让客户端(Web页面)和服务器端可以互相通知消息及调用方法,当然这是实时操作的. 1.环境部署 首先新建一个mvc项目,通过Nuget获取相应SignalR包.使用Nuget的命令模式,直接输入 Install-Package Microsoft.AspNet.SignalR -Version 1.0.1 由于最新版本需要Net Fr

百度EChart3初体验

由于项目需要在首页搞一个订单数量的走势图,经过多方查找,体验,感觉ECharts不错,封装的很细,我们只需要看自己需要那种类型的图表,搞定好自己的json数据就OK.至于说如何体现出来,官网的教程很详细.大家可以去看下.大概了解下用法就OK. 百度ECharts 3:http://echarts.baidu.com/index.html 其实还有很多,可以到官网中找. 下面是我进行操作的步奏,大家可以看下,做个参考. ECharts初体验—01... 需要到官网下载最新的版本的js文件(完整版)