一点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. web HTML5 调用摄像头的代码

    最近公司要求做一个在线拍照的功能,具体代码如下: <html> <head> <title>html5调用摄像头拍照</title> <style ...

  2. Memcached解决单台服务器故障问题

    <beitmemcached> <add key="name1" value="server1:port" /> <add key ...

  3. Linux基本服务命令

    启动Httpd服务:service httpd start 停止Httpd服务:service httpd stop 重启Httpd服务:service httpd restart 关闭httpd所有 ...

  4. c 语言时间的输出和比较

    time_t The most basic representation of a date and time is the type time_t. The value of a time_t va ...

  5. 对match() 和 exec() 返回值和属性的测试

    语法: exec() : RegExpObject.exec(string) match() : stringObject.match(string) stringObject.match(regex ...

  6. Linux系统目录分析

    Linux系统目录分析 /bin :系统指令目录(如ls.cp.mv等指令) /dev :系统设备目录 /home :系统用户的家,每一个系统用户都在此目录下有一个自己的家,每次登录时,系统都会自动登 ...

  7. get the runing time of C++ console program.

    // 获取程序运行时间.cpp : 定义控制台应用程序的入口点.// #include "stdafx.h"#include <time.h>#include < ...

  8. 采用Service实现本地推送通知

    在android的应用层中,涉及到很多应用框架,例如:Service框架,Activity管理机制,Broadcast机制,对话框框架,标题栏框架,状态栏框架,通知机制,ActionBar框架等等. ...

  9. 3月3日(5) Roman to Integer

    原题 Roman to Integer 题意很简单,把Roman字母翻译成int. 实现方式也不难,针对每个字符转成int,从右往左,依次判断,如果当前值比上一个值大则相加,小则相减. 什么,你问我怎 ...

  10. System Generator入门

      System generator 安装之后会在Simulin模块库中添加一些Xilinx FPGA专用的模块库,包括Basic Element,Communication,Control Logi ...