PDA

View Full Version : سوال: هدایت کردن صفحه لاگین به یک Area



irpersian20
جمعه 14 شهریور 1393, 16:22 عصر
سلام
من 2 تا کلاس به اکانت دارم.
یکی مربوط به بخش Home و دیگری Admin
میخواهم برای ادمین کاربران از کلاس اکانت مخصوص ادمین که در area خود ادمین موجود است.استفاده کند . نه از کلاس اکانت مخصوص کاربران. باید چی کنم؟ که مجبور بشه؟

sunn789
جمعه 14 شهریور 1393, 20:52 عصر
چند تا راه حل دارید اما راه حلی که من میگذارم برگرفته از خود Mvc هست چون یه مدت من هم دنبال راه حلی مثل شما میگشتم
اول اینکه توی متدهای اکشن RedirectView به کارت میاد اما بهترین راه حلی که من رو کمک کرد این بود.

<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li>@Html.ActionLink("صفحه اصلی", "Index", "Home")</li>
<li>@Html.ActionLink("MVC", "Index", "Home")</li>
<li>@Html.ActionLink("WPF", "Index", "Home")</li>
<li>@Html.ActionLink("درباره", "About", "Home")</li>
<li>@Html.ActionLink("تماس", "Contact", "Home")</li>

@if (Request.IsAuthenticated && User.IsInRole("SuperAdmin")) {
<li>@Html.ActionLink("RolesAdmin", "Index", "RolesAdmin")</li>
<li>@Html.ActionLink("UsersAdmin", "Index", "UsersAdmin")</li>
}
</ul>
@Html.Partial("_LoginPartial")
</div>
این توی Layout هست به این صورت کار میکند که در صورتی کاربر تایید شده باشد منو ها قابل نمایش هستند البته ل=برای امنیت لازمه تا کلاسهای مربوطه رو هم
[Authorize]
کنید

hakim22
شنبه 15 شهریور 1393, 09:41 صبح
در فایل Web.config و در زیر system.web مسیر مربوطه به login قابل تنظیم است :


<authentication mode="Forms">
<forms loginUrl="~/Account/Login" timeout="3600" />
</authentication>


این آدرسی است که وقتی کاربر نیاز به Authorize داره و در حال حاضر لاگین نکرده بهش منتقل میشه. در MVC 5 و Identity 2.0 هم در وب کانفیگ و هم با استفاده از katana قابل تنظیم هست.