مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

kaveh.norozi

عضویت از 1394/11/30

در خصوص انتقال کاربر به صفحه مورد نظر بعد از لاگین در سایت

  • دوشنبه 30 مرداد 1396
  • 17:56
تشکر میکنم

باسلام

من میخام وقتی یه عده از کاربرا که دارای Role مثلا Student هستند پس از لاگین شدن به یه صفحه منتقل بشن! باید چکار کنم؟

  public async Task<ActionResult> Login(LoginViewModel model, string returnUrl)
        {
            if (!ModelState.IsValid)
            {
                return View(model);
            }


            var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout: false);
            switch (result)
            {
                case SignInStatus.Success:
                    return RedirectToLocal(returnUrl);

                case SignInStatus.LockedOut:
                    return View("Lockout");

                case SignInStatus.RequiresVerification:
                    return RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe });

                case SignInStatus.Failure:
                default:
                    ModelState.AddModelError("", "Invalid login attempt.");
                    return View(model);
            }
        }

من تو کد بالا قسمت .Success رو اینجوری تغییر دادم ولی اتفاقی نیوفتاد!

    case SignInStatus.Success:
                    {
                        if (User.IsInRole("Student"))
                        {
                            return RedirectToAction("Index", "StudentProfile");
                        }
                        else
                        {


                            return RedirectToLocal(returnUrl);
                        }
                    }

میخام وقتی کاربر دانشجو شد به صفحه دانشجو منتقل بشه

لطفا راهنمایی کنید

پاسخ های این پرسش

تعداد پاسخ ها : 8 پاسخ
کاربر سایت

سهیل علیزاده

عضویت از 1396/04/09

  • دوشنبه 30 مرداد 1396
  • 18:06

وقتی که کد کامل اجرا شد چه چیزی را برای شما باز گردانی می کند ؟

کاربر سایت

kaveh.norozi

عضویت از 1394/11/30

  • دوشنبه 30 مرداد 1396
  • 18:31

دستور شرطی که من گذاشتم عمل نمیکنه و به   return RedirectToLocal(returnUrl);

میرسه

کاربر سایت

kaveh.norozi

عضویت از 1394/11/30

  • دوشنبه 30 مرداد 1396
  • 18:32

یه چیز دیگه :

if (User.IsInRole("Student"))
                   

فکر کنم فقط تو View کار میکنه و تو کنترلر نمیشه استفاده کرد!!!

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • دوشنبه 30 مرداد 1396
  • 18:33

در وارد کردن حروف دقت کردید

به حروف کوچک و بزرگ حساس است

کاربر سایت

kaveh.norozi

عضویت از 1394/11/30

  • سه شنبه 31 مرداد 1396
  • 09:24

همه چی ظاهرا اوکیه!

بزرگ و کوچیک بودن هم کنترل شده

ولی جواب نمیده

یه بار هم خاموش روشن کردمcheeky

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • سه شنبه 31 مرداد 1396
  • 10:00

قبل از if شما تمام role های کاربر رو بگیرید و روی اون چک کنید

البته ببینید اصلا نقش ها رو برمیگردونه یا نه

کاربر سایت

سهیل علیزاده

عضویت از 1396/04/09

  • سه شنبه 31 مرداد 1396
  • 10:31

بعد اجرا شدن دوباره به صفحه ورود redirect میشه ؟

کاربر سایت

kaveh.norozi

عضویت از 1394/11/30

  • چهارشنبه 1 شهریور 1396
  • 13:04

نه به صفحه Home/Index ریدایرکت میشه منظور همون ReturnUrl هست

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)