asp.net mvc中的路径选择
时间:2022-04-23
本文章向大家介绍asp.net mvc中的路径选择,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
MVC的路径选择十分灵活,可以用类似/parm1/parm2/parm3/ 的方式(这个有点象iis的urlrewriter),也可以象传统url那样用/?parm1=a&parm2=b&parm3=c这样访问
关键是Global.asax中Route规则的配置
以下是一个Global.asax的示例:
protected void Application_Start(object sender, EventArgs e)
{
// Note: Change Url= to Url="[controller].mvc/[action]/[id]" to enable
// automatic support on IIS6
RouteTable.Routes.Add(new Route
{
Url = "[controller]/[action]",
Defaults = new { action = "Index" },
RouteHandler = typeof(MvcRouteHandler)
});
RouteTable.Routes.Add(new Route
{
Url = "[controller]/[action]/[id]",
Defaults = new { action = "Index", id = (int?)null },
RouteHandler = typeof(MvcRouteHandler)
});
RouteTable.Routes.Add(new Route
{
Url = "[controller]/[action]/[id]/[name]",
Defaults = new { action = "Index", name = (string)null,id=(int?)null },
RouteHandler = typeof(MvcRouteHandler)
});
RouteTable.Routes.Add(new Route
{
Url = "[controller]/[action]/[id]/[name]/[sex]",
Defaults = new { action = "Index", name = (string)null, id = (int?)null,sex=(string)null },
RouteHandler = typeof(MvcRouteHandler)
});
RouteTable.Routes.Add(new Route
{
Url = "Default.aspx",
Defaults = new { controller = "Home", action = "Index", id = 2, name = "Jimmy",sex="female" },
RouteHandler = typeof(MvcRouteHandler)
});
}
对应的HomeController文件:
public class HomeController : Controller
{
/// <summary>
/// Example URL: /Home/Index/?id=2&name=abc&sex=male (对应Url = "[controller]/[action]")
/// /Home/Index/2/?name=abc&sex=male (对应Url = "[controller]/[action]/[id]")
/// /Home/Index/2/abc/?sex=male (对应Url = "[controller]/[action]/[id]/[name]")
/// /Home/Index/2/abc/male/ (对应Url = "[controller]/[action]/[id]/[name]/[sex]")
/// /Home/Index/2/abc/ (对应Url = "[controller]/[action]/[id]/[name]")
/// /Home/Index/2/ (对应Url = "[controller]/[action]/[id]")
/// </summary>
/// <param name="id"></param>
[ControllerAction]
public void Index(int? id,string name,string sex)
{
ViewData["id"] = id;
ViewData["name"] = name;
ViewData["sex"] = sex;
RenderView("Index");
}
}
对应的Index视图:
<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" AutoEventWireup="true" CodeBehind="Index.aspx.cs" Inherits="MVCDemo.Views.Home.Index" %>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContentPlaceHolder" runat="server">
<h2>Welcome to my ASP.NET MVC Application!</h2>
id=<%=ViewData["id"] %> <br/>
name=<%=ViewData["name"] as string %><br/>
sex=<%=ViewData["sex"] as string %>
</asp:Content>
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 安卓 App 逆向课程之四 frida 注入 Okhttp 抓包中篇
- NumPy进阶修炼80题|41-60
- 时序数据库 InfluxDB(一)
- Netty一文深入
- 时序数据库 InfluxDB(三)
- 时序数据库 InfluxDB(四)
- 卧槽,我学会了用Python预测股票价格
- 自定义 ESLint 规则,让代码持续美丽
- 时序数据库 InfluxDB(五)
- 太牛逼了!用 Python 实现抖音上的“人像动漫化”特效,原来这么简单!
- Web 技术:CSS最小和最大(宽度/高度)知识点及优缺点
- javascript入门到进阶 - js系列七:生命周期
- 时序数据库 InfluxDB(六)
- [058]SQLite on Android
- 【Rust日报】2020-07-15 用Rust重写FORTRAN科学软件