之前寫WEB FORM時登入驗證是使用Session,然後再將驗證機制寫入自訂的defense.aspx這隻檔案,之後會再需要驗證的每個頁面INCLUDE以下這程式碼。
<!--#INCLUDE FILE="~/defense.aspx"-->
不知道這INCLUDE的驗證方式在ASP.NET MVC裡面要如何做呢?
ASP.NET MVC新手上路上來請教各位先進指導,因為小弟不知如何客制使用ASP Identity2.0,所以只能使用Session機制來驗證。
感謝指教
Session還是可以用的。
您如果不會使用 Filter,可以寫在 Action裡面。
public ActionResult IndexOK()
{
//// 方法一:
//if (Session["Login"] != null && Session["Login"].ToString() == "OK")
//{ // 正常登入成功,取得門票與鑰匙。 允許通行!
// return View();
//}
//else
//{ //return Content("登入失敗!!");
// return RedirectToAction("IndexFAIL");
//}
}
另一方法可以參考
https://dotblogs.com.tw/mis2000lab/2014/08/01/authentication-mode-forms_web-config
會員登入 與 FormsAuthentication (Web.Config裡面的 authentication mode="Forms")
這種寫法,以前WebForm、現在MVC都可以用。
您就可以這樣使用了
// GET: Login
public ActionResult Index()
{
return View(); // 任何人(匿名)都可以看見
}
//***********************
[Authorize]
public ActionResult Index2()
{
return View(); // 登入成功(會員)才可以看見
}
希望對您有幫助。
這裡有 ASP.NET MVC 第一天「免費5.5小時」的入門試聽
https://dotblogs.com.tw/mis2000lab/2018/08/14/aspnet_mvc_online_learning_mis2000lab
只要補上一些基礎(像我 "前兩天"的課程說明),您應該就能跟得上坊間ASP.NET MVC書籍、課程(微軟線上教材、官方教材)的進度了。
大部分的初學者對於簡單的類別、MVC的基礎觀念不熟悉,所以貿然上課、買書可能跟不上。所以我整理了兩天的「入門課」,第三天才正式上課。希望能降低門檻。