.NET MVC HtmlHepler
一、HtmlHepler
1.ActionLink()
动态生成 超链接:根据路由规则,生成对应的 html 代码。
//1.注册路由信息
routes.MapRoute(
name: "Default",
url: "{controller}_aa/{action}.html/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
//2.在试图上创建 超链接
<a href="/Home/Heaven">回家</a><br />
@Html.ActionLink("回家","heaven", "Home")
//3.在浏览器看到的生成结果
<a href="/Home/Heaven">回家</a><br />
<a href="/Home/heaven">回家</a>
2.BeginForm()
//1.在视图中 创建 表单
@using (Html.BeginForm("add", "home", FormMethod.Post, new { id="form1" }))
{
}
//2.生成的html代码
<form action="/home/add.html" id="form1" method="post"> 文章标题:
</form>
补充:
//直接 在视图中 @ 调用有返回值的方法,就已经相当于是将返回值 写入 Response了
@Html.Label("ATitle")
//相当于下面代码
@{
Response.Write(Html.Label("ATitle"));
}
3.Lable()等生成 html 标签方法
注:所有的方法 都默认 去 视图的 Model 属性所储存的对象 中 查找匹配属性
//1.为实体类 添加 特性 DisplayName
public partial class BlogArticle
{
[DisplayName("文章标题")]
public string ATitle { get; set; }
}
//2.在Action方法中,为视图 的 Model 设置值
public ActionResult Add()
{
return View(new Models.BlogArticle() { ATitle="哇哈哈哈~~!" });
}
//3.在视图中,通过 html的帮助方法,生成 html 标签,同时指定,要读取的 属性名
@Html.Label("Atitle")
//4.生成对应的 html标签,并自动读取了 对应属性 的 DisplayName 里的文本。
<label for="Atitle">文章标题</label>
4.强类型的Html标签方法
强类型方法,直接 通过 lambda表达式,去试图的 Model属性对象中 查找对应的属性数据
4.1普通强类型方法(通过不同方法生成不同html标签)
//1.视图上调用方法
@Html.TextBoxFor(a=> a.ATitle)
//2.生成的html代码
<input class="text-box single-line" id="ATitle" name="ATitle" type="text" value="哇哈哈哈~~!"/>
4.2超强强类型方法(通过 属性的 DataType特性生成html标签)
//1.在实体类中 为 AContent 属性设置 DataType特性,指定为 多行文本框
public partial class BlogArticle
{
[DataType(System.ComponentModel.DataAnnotations.DataType.MultilineText)]
public string AContent { get; set; }
}
//2.视图上 自动根据model对象里属性保存的 实体类 属性 的 [DataType] 特性里指定的类型生成对应的html标签
@Html.EditorFor(a=> a.ATitle)
//3.生成html代码
<textarea class="text-box multi-line" id="AContent" name="AContent"></textarea>
.NET MVC HtmlHepler的更多相关文章
- 【ASP.NET MVC 回顾】HtmlHepler应用-分页组件
以前在ASP.NET WebForm开发中会用到许多控件,像DropDownList等.同样ASP.NET MVC中也有类似的控件-HtmlHelper. HtmlHelper和服务器控件相比,Htm ...
- MVC学习(四)几种分页的实现(3)
在这篇MVC学习(四)几种分页的实现(2)博文中,根据URL中传入的两个参数(页码数,首页.上一页.下一页.末页的标记符)来获得对应的分页数据, 只是传入的参数太多,调用起来不太方便(标记符不能够写错 ...
- MVC学习八:MVC View提交数据
学习编程最主要的就是数据交互,MVC中数据交互是怎么样的呢? 1.Controller向View传输数据在http://www.cnblogs.com/WarBlog/p/7127574.html中有 ...
- Asp.Net Mvc 使用WebUploader 多图片上传
来博客园有一个月了,哈哈.在这里学到了很多东西.今天也来试着分享一下学到的东西.希望能和大家做朋友共同进步. 最近由于项目需要上传多张图片,对于我这只菜鸟来说,以前上传图片都是直接拖得控件啊,而且还是 ...
- .Net Core MVC 网站开发(Ninesky) 2.4、添加栏目与异步方法
在2.3中完成依赖注入后,这次主要实现栏目的添加功能.按照前面思路栏目有三种类型,常规栏目即可以添加子栏目也可以选择是否添加内容,内容又可以分文章或其他类型,所以还要添加一个模块功能.这次主要实现栏目 ...
- ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第二章:利用模型类创建视图、控制器和数据库
在这一章中,我们将直接进入项目,并且为产品和分类添加一些基本的模型类.我们将在Entity Framework的代码优先模式下,利用这些模型类创建一个数据库.我们还将学习如何在代码中创建数据库上下文类 ...
- ASP.NET Core MVC/WebAPi 模型绑定探索
前言 相信一直关注我的园友都知道,我写的博文都没有特别枯燥理论性的东西,主要是当每开启一门新的技术之旅时,刚开始就直接去看底层实现原理,第一会感觉索然无味,第二也不明白到底为何要这样做,所以只有当你用 ...
- ASP.NET Core 中文文档 第四章 MVC(3.8)视图中的依赖注入
原文:Dependency injection into views 作者:Steve Smith 翻译:姚阿勇(Dr.Yao) 校对:孟帅洋(书缘) ASP.NET Core 支持在视图中使用 依赖 ...
- 开源:Taurus.MVC 框架
为什么要创造Taurus.MVC: 记得被上一家公司忽悠去负责公司电商平台的时候,情况是这样的: 项目原版是外包给第三方的,使用:WebForm+NHibernate,代码不堪入目,Bug无限,经常点 ...
随机推荐
- BIEE建模参考规范
BIEE建模参考规范 注:本文基于网上盛传的“BIEE建模黄金法则”,并做了更为细致的讲解,以及修改. 物理层 1. 在可能的情况下,配置你的连接池使用本地驱动来连接物理数据库.例如,使用OCI而不 ...
- Zero to One读后感
Zero to One是一本不错的书,无论你是在职场还是在创业都应该看看先.书中没有告诉你任何的职业技巧,但是很明确的告诉了你应该有的思考方式,告诉你人与机器的关系,告诉成功企业固有的模式以及你为什么 ...
- EMD_MAINTENANCE.EXECUTE_EM_DBMS_JOB_PROCS的删除创建
在最近的一次优化过程中发现了ORACLE 10g中一个作业EMD_MAINTENANCE.EXECUTE_EM_DBMS_JOB_PROCS执行相当频繁,其实以前也看到过,只是没有做过多的了解和关注. ...
- 使用 xtrabackup 进行MySQL数据库物理备份
0. xtrabackup的功能 能实现的功能: 非阻塞备份innodb等事务引擎数据库. 备份myisam表会阻塞(需要锁). 支持全备.增量备份.压缩备份. 快速增量备份(xtradb,原理类似于 ...
- SQL Server调优系列玩转篇三(利用索引提示(Hint)引导语句最大优化运行)
前言 本篇继续玩转模块的内容,关于索引在SQL Server的位置无须多言,本篇将分析如何利用Hint引导语句充分利用索引进行运行,同样,还是希望扎实掌握前面一系列的内容,才进入本模块的内容分析. 闲 ...
- tomcat黑/白名单设置
vim $tomcat_home/conf/server.xml(可以单个IP或者多个ip,多个ip用|分隔,支持正则) <Context path=" reloadable=&quo ...
- springmvc+log4j操作日志记录,详细配置
没有接触过的,先了解一下:log4j教程 部分内容来:log4j教程 感谢! 需要导入包: log包:log4j-12.17.jar 第一步:web.xml配置 <!-- log4j配置,文件路 ...
- Windows下常用软件工具的命令
Linux上主要操作是命令,懂一点linux知识的都知道,其实windows下边很多工具也是可以用命令来操作打开的,这样会提高效率,节省很多的时间.下边就记录一下常用的命令. 一.常用命令 1.远程桌 ...
- android 关于appcompat v7出错问题与解决
1.appcompat_v7:应用兼容包,V7说的是版本7,即android2.1,这个兼容包支持2.1版本以上系统2.最近谷歌官方将兼容jar包与某些资源文件单独拿出来建立了一个android工程, ...
- Vim命令大全
1.进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于 ...