最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ASP.NET?MVC從控制器中獲取URL值

 更新時(shí)間:2022年03月08日 11:20:28   作者:.NET開發(fā)菜鳥  
這篇文章介紹了ASP.NET?MVC從控制器中獲取URL值的方法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

從控制器中獲取URL的值有三種方式:

1、使用Request.QueryString[]

例如:

string value = Request.QueryString["BookId"].ToString();

注意:Request.QueryString只能獲取URL中以?分割的參數(shù)值。

案例演示:

action方法代碼如下:

#region 1、通過Request.QueryString的方式獲取URL的值
public ActionResult Index()
{
       // 獲取路由數(shù)據(jù)
       if (Request.QueryString["BookId"] != null)
      {
            string value = Request.QueryString["BookId"].ToString();
            ViewData["msg"] = value;
       }
       return View();
} 
#endregion

在前端頁面添加一個(gè)P標(biāo)簽,用來輸出BookId的值:

<p style="color:red;font-weight:bold">1、通過Request.QueryString獲取URL的值:@ViewData["msg"]</p>

運(yùn)行結(jié)果

URL里面沒有BookId參數(shù)時(shí)的結(jié)果:

URL里面有Bookid參數(shù)時(shí)的結(jié)果:

注意:URL里面的參數(shù)不區(qū)分大小寫。

http://localhost:47723/Home/Index?BookId=4546

http://localhost:47723/Home/Index?BookID=4546

http://localhost:47723/Home/Index?bookid=4546

上面的幾種URL都可以獲取到BooId參數(shù)的值(這里只是列舉了幾種,其他形式的BookId也可以獲取到)。

2、使用RouteData.Values

例如:

string paraDatas = string.Format("controller={0} action={1} id={2}", RouteData.Values["controller"].ToString(),
                RouteData.Values["action"].ToString(), RouteData.Values["id"]);

注意:RouteData.Values["id"]就是當(dāng)前字典上的路由數(shù)據(jù),通過訪問鍵名的方式得到鍵值,比如URL模式匹配的字符串是ID,則key的值必須是id。

案例演示

action方法代碼如下:

public ActionResult Index()
{
      // 獲取路由數(shù)據(jù)
      string paraDatas = string.Format("controller={0} action={1} id={2}", RouteData.Values["controller"].ToString(),
                    RouteData.Values["action"].ToString(), RouteData.Values["id"]);
       ViewData["msg"] = paraDatas;
       return View();
}

在前端頁面添加一個(gè)P標(biāo)簽,用來輸出URL參數(shù)的值:

<p style="color:blue;font-weight:bold">2、通過RouteData獲取URL的值:@ViewData["msg"]</p>

運(yùn)行結(jié)果:

3、使用action參數(shù)

public ActionResult Index(string controller, string action, int id)
{ }

注意:Action方法的參數(shù)和路由字典的參數(shù)是對(duì)應(yīng)的,MVC框架在執(zhí)行action方法前會(huì)首先為這些參數(shù)賦值。

案例演示

action方法代碼如下:

public ActionResult Index(string controller, string action, int id)
{
      // 獲取路由數(shù)據(jù)
      string paraDatas = string.Format("controller={0} action={1} id={2}", controller, action, id);
      ViewData["msg"] = paraDatas;
      return View();
}

注意:這時(shí)候需要修改路由注冊(cè),給id一個(gè)默認(rèn)值,或者和第一種方式里面一樣先判斷id的值是否為null。否則會(huì)報(bào)下面的錯(cuò)誤:

在這里給id一個(gè)默認(rèn)值2

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;

namespace MVCUrlPara
{
    public class RouteConfig
    {
        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id = 2 } //給id默認(rèn)值2
            );
        }
    }
}

運(yùn)行結(jié)果

示例代碼下載地址:點(diǎn)此下載

到此這篇關(guān)于ASP.NET MVC從控制器中獲取URL值的文章就介紹到這了。希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • ASP.Net項(xiàng)目中實(shí)現(xiàn)微信APP支付功能

    ASP.Net項(xiàng)目中實(shí)現(xiàn)微信APP支付功能

    這篇文章介紹了ASP.Net項(xiàng)目中實(shí)現(xiàn)微信APP支付功能的方法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • .NETCore添加區(qū)域Area代碼實(shí)例解析

    .NETCore添加區(qū)域Area代碼實(shí)例解析

    這篇文章主要介紹了.NETCore添加區(qū)域Area代碼實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • DataSet、DataTable、DataRow區(qū)別詳解

    DataSet、DataTable、DataRow區(qū)別詳解

    這篇文章主要介紹了DataSet、DataTable、DataRow區(qū)別詳解,需要的朋友可以參考下
    2014-02-02
  • ASP.NET使用正則表達(dá)式屏蔽垃圾信息

    ASP.NET使用正則表達(dá)式屏蔽垃圾信息

    找資料,看看如何實(shí)現(xiàn)使用正則表達(dá)式屏蔽垃圾信息,找來找去找出來的都不怎么好,有不詳細(xì)的,有代碼缺失的。最后還是找到了微軟,先摘過來,大概思路已經(jīng)有了,只需把下面微軟給的樣例代碼修改一下即可,具體能不能行還不知道,先睡一覺,起來再慢慢研究。
    2008-09-09
  • ASP.NET?Core基于滑動(dòng)窗口實(shí)現(xiàn)限流控制

    ASP.NET?Core基于滑動(dòng)窗口實(shí)現(xiàn)限流控制

    這篇文章主要介紹了ASP.NET?Core基于滑動(dòng)窗口實(shí)現(xiàn)限流控制,?AspNetCoreRateLimit是目前ASP.NET?Core下最常用的限流解決方案,下面詳細(xì)內(nèi)容,需要的小伙伴可以參考一下
    2022-03-03
  • .NET 6開發(fā)TodoList應(yīng)用之使用AutoMapper實(shí)現(xiàn)GET請(qǐng)求

    .NET 6開發(fā)TodoList應(yīng)用之使用AutoMapper實(shí)現(xiàn)GET請(qǐng)求

    我們希望接受的請(qǐng)求和返回的值具有以下兩點(diǎn)需要遵循的原則:每個(gè)model被且只被一個(gè)API消費(fèi);每個(gè)model里僅僅包含API發(fā)起方希望包含的必要字段或?qū)傩?。AutoMapper庫就是為了實(shí)現(xiàn)這個(gè)需求而存在的。本文將為大家介紹AutoMapper如何實(shí)現(xiàn)GET請(qǐng)求,需要的可以參考一下
    2021-12-12
  • Asp.net內(nèi)置對(duì)象之Cookies(簡(jiǎn)介/屬性方法/基本操作及實(shí)例)

    Asp.net內(nèi)置對(duì)象之Cookies(簡(jiǎn)介/屬性方法/基本操作及實(shí)例)

    本文將圍繞cookies了解Cookies對(duì)象/Cookie對(duì)象的屬性和方法/Cookie的基本操作及實(shí)例:Cookie的寫入和讀取/Cookie對(duì)象相比Session、Application的優(yōu)缺點(diǎn)扥等,感興趣的朋友可以了解下,或許對(duì)你學(xué)習(xí)cookies有所幫助
    2013-02-02
  • ASP.NET Core對(duì)Controller進(jìn)行單元測(cè)試的完整步驟

    ASP.NET Core對(duì)Controller進(jìn)行單元測(cè)試的完整步驟

    這篇文章主要給大家介紹了關(guān)于ASP.NET Core對(duì)Controller進(jìn)行單元測(cè)試的完整步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用ASP.NET Core具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • asp.net GridView中使用RadioButton單選按鈕的方法

    asp.net GridView中使用RadioButton單選按鈕的方法

    這篇文章主要介紹了asp.net GridView中使用RadioButton單選按鈕的方法,結(jié)合實(shí)例形式總結(jié)分析了三種GridView中使用RadioButton單選按鈕的實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2016-07-07
  • ASP.NET網(wǎng)站聊天室的設(shè)計(jì)與實(shí)現(xiàn)(第3節(jié))

    ASP.NET網(wǎng)站聊天室的設(shè)計(jì)與實(shí)現(xiàn)(第3節(jié))

    這篇文章主要介紹了ASP.NET網(wǎng)站聊天室的設(shè)計(jì)與實(shí)現(xiàn),了解Session、Application對(duì)象的屬性和事件,并且掌握利用它們?cè)陧撁骈g保存和傳遞數(shù)據(jù)的方法,需要的朋友可以參考下
    2015-08-08

最新評(píng)論

兴安盟| 罗平县| 北京市| 闵行区| 南安市| 普陀区| 新营市| 东乡族自治县| 临颍县| 巫溪县| 都昌县| 黔江区| 定远县| 洛川县| 庆城县| 巍山| 大理市| 贡嘎县| 武川县| 怀柔区| 珠海市| 惠安县| 慈利县| 苏尼特左旗| 宿州市| 深圳市| 资中县| 磴口县| 濉溪县| 汝阳县| 沐川县| 沾化县| 义马市| 内黄县| 呼和浩特市| 郑州市| 稷山县| 刚察县| 上蔡县| 二手房| 吉首市|