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

.net MVC使用Session驗證用戶登錄(4)

 更新時間:2018年04月10日 10:55:21   作者:清幽火焰  
這篇文章主要為大家詳細介紹了.net MVC使用Session驗證用戶登錄的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下

用最簡單的Session方式記錄用戶登錄狀態(tài)

1.添加DefaultController控制器,重寫OnActionExecuting方法,每次訪問控制器前觸發(fā)

public class DefaultController : Controller
  {
    protected override void OnActionExecuting(ActionExecutingContext filterContext)
    {
      base.OnActionExecuting(filterContext);
      var controllerName = filterContext.ActionDescriptor.ControllerDescriptor.ControllerName;

      var userName = Session["UserName"] as String;
      if (String.IsNullOrEmpty(userName))
      {
        //重定向至登錄頁面
        filterContext.Result = RedirectToAction("Index", "Login", new { url = Request.RawUrl});
        return;
      }

    }
  }

2.登錄控制器

public class LoginController : Controller
  {
    // GET: Login
    public ActionResult Index(string ReturnUrl)
    {
      if (Session["UserName"] != null)
      {
        return RedirectToAction("Index", "Home");
      }
      ViewBag.Url = ReturnUrl;
      return View();
    }

    [HttpPost]
    public ActionResult Index(string name, string password, string returnUrl)
    {
      /*
        添加驗證用戶名密碼代碼
      */
      Session["UserName"] = name;
      if (Url.IsLocalUrl(returnUrl) && returnUrl.Length > 1 && returnUrl.StartsWith("/") && !returnUrl.StartsWith("http://") && !returnUrl.StartsWith("/\\"))
      {
        return Redirect(returnUrl);
      }
      else
      {
        return RedirectToAction("Index", "Home");
      }
    }

    // POST: /Account/LogOff
    [HttpPost]
    public ActionResult LogOff()
    {
      Session["UserName"] = null;
      return RedirectToAction("Index", "Home");
    }
  }

3.需要驗證的控制器繼承DefaultController

public class HomeController : DefaultController
  {
    public ActionResult Index()
    {
      return View();
    }
  }

這種方式適合比較小的項目

優(yōu)點:簡單,易開發(fā)
缺點:無法記錄登錄狀態(tài),而且Session方式容易丟失

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • .NET使用?OpenTelemetry?Traces?追蹤應(yīng)用程序的方法

    .NET使用?OpenTelemetry?Traces?追蹤應(yīng)用程序的方法

    OpenTelemetry Traces是OpenTelemetry提供的一種遙測數(shù)據(jù)類型,用于記錄和描述在分布式系統(tǒng)中的單個操作或工作單元的生命周期,這篇文章主要介紹了.NET中使用OpenTelemetry Traces追蹤應(yīng)用程序,需要的朋友可以參考下
    2024-06-06
  • asp.net獲取網(wǎng)站絕對路徑示例

    asp.net獲取網(wǎng)站絕對路徑示例

    在編寫 ASP.NET 應(yīng)用程序的時候,有時為了更好地進行控制靜態(tài)文件的路徑,如在模板頁或者用戶控件中設(shè)置js或者css文件的路徑等,采用絕對路徑是難免的。下面就是幾種獲取絕對路徑的幾種方法
    2014-02-02
  • ASP.NET Core中使用默認MVC路由的配置

    ASP.NET Core中使用默認MVC路由的配置

    這篇文章主要介紹了ASP.NET Core中使用默認MVC路由的配置,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • .net core并發(fā)下線程安全問題詳解

    .net core并發(fā)下線程安全問題詳解

    這篇文章主要給大家介紹了關(guān)于.net core并發(fā)下線程安全問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用.net core具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-04-04
  • ASP.NET中生成Excel遇到的問題及改進方法

    ASP.NET中生成Excel遇到的問題及改進方法

    這是在項目中使用的生成Excel的一個方法(其實是我在網(wǎng)上收集),用了半年時間,并未出現(xiàn)異常情況。近日當我再次使用該方法生成Excel的時候出現(xiàn)了問題
    2011-02-02
  • ASP.NET Core Api網(wǎng)關(guān)Ocelot的使用初探

    ASP.NET Core Api網(wǎng)關(guān)Ocelot的使用初探

    這篇文章主要介紹了ASP.NET Core Api網(wǎng)關(guān)Ocelot的使用初探,幫助大家更好的理解和學習使用.NET技術(shù),感興趣的朋友可以了解下
    2021-03-03
  • Asp.net中static變量和viewstate的使用方法(謹慎)

    Asp.net中static變量和viewstate的使用方法(謹慎)

    如在頁面中統(tǒng)計某個按鈕被按下的次數(shù),先在類中OnClick事件的處理過程前定義一static變量times,則每次調(diào)用該按鈕的OnClick事件時,令times增1即可,非常方便,接下來詳細介紹,感興趣的朋友可以了解下
    2013-01-01
  • asp.net 頁面間傳值與跳轉(zhuǎn)的區(qū)別

    asp.net 頁面間傳值與跳轉(zhuǎn)的區(qū)別

    通過Server.Transfer("b.aspx") 與Response.Redirect("b.aspx")的區(qū)別
    2010-04-04
  • SqlCommandBuilder類批量更新excel或者CSV數(shù)據(jù)的方法

    SqlCommandBuilder類批量更新excel或者CSV數(shù)據(jù)的方法

    這篇文章主要介紹了SqlCommandBuilder類批量更新excel或者CSV數(shù)據(jù)的方法,需要的朋友可以參考下
    2015-10-10
  • asp.net gridview分頁:第一頁 下一頁 1 2 3 4 上一頁 最末頁

    asp.net gridview分頁:第一頁 下一頁 1 2 3 4 上一頁 最末頁

    這篇文章主要介紹了asp.net gridview分頁:第一頁 下一頁 1 2 3 4 上一頁 最末頁,可使用上下鍵選中行,選中后點擊修改,textbox獲得gridview中的代碼的數(shù)據(jù),需要的朋友可以參考下
    2014-12-12

最新評論

五指山市| 卢氏县| 礼泉县| 神木县| 中江县| 开原市| 兴仁县| 苏尼特左旗| 阳曲县| 乐安县| 睢宁县| 凌海市| 堆龙德庆县| 手游| 临湘市| 肥西县| 汪清县| 甘泉县| 来安县| 海原县| 宣化县| 天长市| 水城县| 云林县| 濉溪县| 万载县| 醴陵市| 清镇市| 丹江口市| 龙川县| 长沙市| 奉新县| 大港区| 萨迦县| 鄂州市| 景洪市| 屏山县| 绥中县| 营山县| 英超| 辉县市|