一点ASP.NET MVC Html.Helper类

这里就只写一个Html.ActionLink()和Html.DropdownList()。

Html.ActionLink()里有三个参数,第一个是链接的名字,第二个是视图的名字,第三个是控制器的名字。以下附一下其视图的代码和控制器的代码。

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc; namespace _1110HtmlHelper.Controllers
{
public class Default1Controller : Controller
{
//
// GET: /Default1/
public ActionResult Index()
{
ViewData["time"] = DateTime.Now.ToString();
ViewData["city"] = new List <SelectListItem>()
{
new SelectListItem(){Selected = false,Text="洞庭湖北",Value=""},
new SelectListItem(){Selected = false,Text="孝感天下",Value=""},
new SelectListItem(){Selected=false,Text="恍然大悟",Value = ""}
};
return View();
}
public ActionResult Lianjie()
{
return Content("小杜同学你已成功链接到此位置了。");
//此处的Content()也就相当于context.Response();
}
}
}

控制器的代码

 <%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>

 <!DOCTYPE html>

 <html>
<head runat="server">
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<body>
<div>
当前时间是: <%=ViewData["time"] %>
<hr/>
<h3>这是我自己写的超链接</h3>
<a href="/default1/lianjie">小杜自己写的超链接</a>
<hr />
<h3>这是用htmlHelper写的超链接</h3>
<%=Html. ActionLink("htmlHelper的超链接","Lianjie","Default1")%>
<hr/>
<%=Html.DropDownList("city") %>
</div>
</body>
</html>

视图的代码

那么上面我是有用分割线分开,一个是我自己写的超链接,一个是用Html.ActionHelper写的链接。他们的区别呢,就在于当我们改了Global.asax.cs里路由规则,比如将本来是{controller}/{action}/{id}改成{controller}-{action}-{id},因为我们自己写的链接就相当于写死的字符串,就找不到链接的页面了。而如果是用Html.ActionLink()写的只是需要当请求地址的时候改原本写“/”的位置改成“-”就可以了。

Html.DropdownList()就相当于是下拉列表。其写法呢,也就是在前台写一个ViewData[],括号里写要的是选择元素的名称,new一个选择的集合,为之赋值,其有三个参数,第一个是是否默认选中,第二个是显示的值,第三个就是选定项的值。视图那个位置也就是Html.DropdownList("选择元素的名称")仔细看一下上面的代码也就会清楚的。

小附一下我的截图。

最后说一下,也许你一定知道我是哪里人了。

一点ASP.NET MVC Html.Helper类的方法的更多相关文章

  1. ASP.NET MVC:@helper 不能调试

    ASP.NET MVC 的 @helper 不能设置断点,当然我们可以将逻辑移动到扩展方法中,这里介绍另外一种方式,使用:System.Diagnostics.Debug.WriteLine,编程旅途 ...

  2. ASP.NET MVC ETag & Cache等优化方法

    背景 最近有一个项目是用SmartAdmin + Jquery + EasyUI 一个ASP.NET MVC5的项目,一直存在一个性能问题,加载速度比较慢,第一次加载需要(在没有cache的情况下)需 ...

  3. ASP.NET MVC学前篇之扩展方法、链式编程

    ASP.NET MVC学前篇之扩展方法.链式编程 前言 目的没有别的,就是介绍几点在ASP.NETMVC 用到C#语言特性,还有一些其他琐碎的知识点,强行的划分一个范围的话,只能说都跟MVC有关,有的 ...

  4. ASP.NET MVC 应用提速的十种方法

    [编者按]本文作者为 DZone 社区的最具价值博主(MVB) Jonathan Danylko,主要介绍为 ASP.NET MVC 应用提速的十种方法.由国内 ITOM 管理平台 OneAPM 编译 ...

  5. Asp.Net MVC以 JSON传值扩展方法

    Asp.Net在客户端和服务器端,以JSON形式相互传值,可写扩展方法,用到的类型如下: DataContractJsonSerializer类: 该类在System.Runtime.Serializ ...

  6. Asp.Net MVC以JSON传值扩展方法

    Asp.Net在客户端和服务器端,以JSON形式相互传值,可写扩展方法,用到的类型如下: DataContractJsonSerializer类: 该类在System.Runtime.Serializ ...

  7. 在Asp.Net MVC中用Ajax回调后台方法

    在Asp.Net MVC中用Ajax回调后台方法基本格式: var operData = ...; //传递的参数(action中定义的) var type = ...; //传递的参数(action ...

  8. ASP.net MVC 文件下载的几种方法

      ASP.net MVC 文件下载的几种方法(欢迎讨论) 在ASP.net MVC 中有几种下载文件的方法前提:要下载的文件必须是在服务器目录中的,至于不在web项目server目录中的文件下载我不 ...

  9. ASP.NET MVC @html帮助类

    原文:https://www.cnblogs.com/caofangsheng/p/10462494.html HTML Helpers是用来创建HTML标签进而创建HTML控件的.HTML Help ...

随机推荐

  1. AspxGridView 数据的汇总统计

    AspxGridView底部增加数据汇总行 这个功能在AspxGridView中不用复杂的代码实现, 实际上只是设置下GridView的属性而已 1. ShowFooter设置为True,即显示. 位 ...

  2. 跟我一起学习ASP.NET 4.5 MVC4.0(五)(转)

    前面几篇文章介绍了一下ASP.NET MVC中的一些基础,今天我们一起来学习一下在ASP.NET MVC中控件的封装.在页面中我们会经常使用到Html对象,来程序控件,当然这里的控件不是说ASP.NE ...

  3. C#_数组

     数组是相同数据类型的元素按一定顺序排列的集合,然后用一个变量名进行命名.新建控制台程序,声明一个静态方法 using System; using System.Collections.Gener ...

  4. C#去除HTML标签(转)

    public static string ReplaceHtmlTag(string html, int length = 0) { string strText = System.Text.Regu ...

  5. 你所不知道的html5与html中的那些事第三篇

    文章简介: 关于html5相信大家早已经耳熟能详,但是他真正的意义在具体的开发中会有什么作用呢?相对于html,他又有怎样的新的定义与新理念在里面呢?为什么一些专家认为html5完全完成后,所有的工作 ...

  6. SQL中各数据类型的长度、精度

    在 Microsoft? SQL Server? 中,每个列.局部变量.表达式和参数都有一个相关的数据类型,这是指定对象可持有的数据类型(整型.字符.money 等等)的特性. SQL Server ...

  7. php连接到数据库操作

    <?php $result = mysql_query($sql); while($row = mysql_fetch_array($result)) { ?> 要写的内容代码,比如说Ht ...

  8. <img>元素底部为何有空白?

    原因: 图片文字等inline元素默认是和父级元素的baseline对齐的,即:vertical-align 的默认值是 baseline:而baseline又和父级底边bottom有一定距离: im ...

  9. MySQL之左连接与右连接

    左连接: select 列1,列2,列N from tableA left join tableB on tableA.列 = tableB.列(正常是一个外键列) [此处表连接成一张大表,完全当成一 ...

  10. Linux 软中断

    本文转载自: http://blog.chinaunix.net/uid-9620812-id-3833377.html,如有需要,请移步访问. Technorati 标签: Linux 软中断 -- ...