roshanak_g
شنبه 27 آذر 1389, 17:46 عصر
با سلام
من یه کد login دیدم ولی زیاد متو جه نشدم که چطور کار میکنه من کد رو در اینجا می زارم هرکسی که میتونه لطف کنه تو ضیح بده
ابتدا تو web.config بین دو نود <
<authentication mode="Forms"
>
</authentication> این کدورو رو قرا بدیم .ولی متاستفانه مشکل اینجاست که به این تگ error گرفته میشه واین تگ اصلا تو web.config وجود نداره(تگ credential)
<authentication mode="Forms">
<forms loginUrl="~/Account/LogOn" timeout="2880">
<credentials passwordFormat="SHA1">
<user name="admin" password="e9fe51f94eadabf54dbf2fbbd57188b9abee436e" />
</credentials>
</forms>
</authentication>
مرحله دوم این کدها رو داخل contrller قرار میدیم
public class AccountController : Controller
{
[AcceptVerbs(HttpVerbs.Get)]
public ViewResult LogOn()
{
return View();
}
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult LogOn(string name, string password, string returnUrl)
{
if (FormsAuthentication.Authenticate(name, password)) {
// Assign a default redirection destination if not set
returnUrl = returnUrl ?? Url.Action("Index", "Admin");
// Grant cookie and redirect
FormsAuthentication.SetAuthCookie(name, false);
return Redirect(returnUrl); ;
}
else {
ViewData["lastLoginFailed"] = true;
return View();
}
}
}
و ضمنا گفته شده اگه میخواین این صفحه فیلتر بشه دستور زیر رو تو هر صفحه ای که میخواین قرار بدین تا این صفحه فقط برای مدیر نمایش داده بشه
if (!Request.IsAuthenticated)
FormsAuthentication.RedirectToLoginPage();
با تشکر قبلی از کسانیکه جواب سوالمو میدن.
من یه کد login دیدم ولی زیاد متو جه نشدم که چطور کار میکنه من کد رو در اینجا می زارم هرکسی که میتونه لطف کنه تو ضیح بده
ابتدا تو web.config بین دو نود <
<authentication mode="Forms"
>
</authentication> این کدورو رو قرا بدیم .ولی متاستفانه مشکل اینجاست که به این تگ error گرفته میشه واین تگ اصلا تو web.config وجود نداره(تگ credential)
<authentication mode="Forms">
<forms loginUrl="~/Account/LogOn" timeout="2880">
<credentials passwordFormat="SHA1">
<user name="admin" password="e9fe51f94eadabf54dbf2fbbd57188b9abee436e" />
</credentials>
</forms>
</authentication>
مرحله دوم این کدها رو داخل contrller قرار میدیم
public class AccountController : Controller
{
[AcceptVerbs(HttpVerbs.Get)]
public ViewResult LogOn()
{
return View();
}
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult LogOn(string name, string password, string returnUrl)
{
if (FormsAuthentication.Authenticate(name, password)) {
// Assign a default redirection destination if not set
returnUrl = returnUrl ?? Url.Action("Index", "Admin");
// Grant cookie and redirect
FormsAuthentication.SetAuthCookie(name, false);
return Redirect(returnUrl); ;
}
else {
ViewData["lastLoginFailed"] = true;
return View();
}
}
}
و ضمنا گفته شده اگه میخواین این صفحه فیلتر بشه دستور زیر رو تو هر صفحه ای که میخواین قرار بدین تا این صفحه فقط برای مدیر نمایش داده بشه
if (!Request.IsAuthenticated)
FormsAuthentication.RedirectToLoginPage();
با تشکر قبلی از کسانیکه جواب سوالمو میدن.