مشاوره رایگان
دریافت لینک های دانلود دریافت پستی درب منزل مبلغ کل: تومان
جهت دریافت کد تخفیف به کانال تلگرام مراجعه و یا با پشتیبان آنلاین هماهنگ نمایید

لاگین ایجکسی در Asp.net core


با سلام و خسته نباشید به همه کاربران عزیز وب سایت کلیک سایت
نام مقاله : لاگین ایجکسی در Asp.net core

 

قبل از شروع به مقاله خدمتتون عرض کنیم این مبحث در دوره آموزش Asp.net Core به صورت پروژه محور و در قالب پیاده سازی یک سیستم کتابخانه به صورت کامل آموزش داده شده است.
همونطوری که می دونید مدتی هست مایکروسافت از تکنولوژی جدید خودش یعنی Core رونمایی کرده و مزایای بسیار زیاد اون مثل سرعت بالاتر، امنیت بهتر و سازگاری بهتر اون با سایر سیستم عامل ها باعث شده تا دل هر برنامه نویسی رو ببره و اکثر برنامه نویس های Asp به سرعت به سمت Asp.net Core کوچ کنن.
اما اگر یه سرچ ساده در اینترنت و توی گوگل بزنید متوجه می شید که منابع برای یادگیری Asp.net Core خیلی محدود هست و حتی خود مایکروسافت هم هنوز داکیومنت و راهنمای کاملی رو ارائه نداده. بنابراین ما سعی می کنیم توی این مقالات تا اونجایی که برامون مقدور هست مباحث مختلف رو به بحث بذاریم و در موردشون به صورت عملی صحبت کنیم.
قبل از اینکه وارد بحث این مقاله یعنی لاگین ایجکسی در Asp.net core بشیم بهتون توصیه میکنم حتما از دوره آموزشی Asp.net Core به صورت کاملا پروژه محور رو که در قالب فیلم های آموزشی و در قالب پیاده سازی یک پروژه کتابخانه طراحی کردیم رو حتما مشاهده بفرمایید چرا که به جرات میشه گفت این دوره یک منبع بسیار عالی برای یادگیری Asp.net Core هست.
اما بریم ببینیم چجوری میتونیم یک لاگین ایجکسی در Asp.net Core داشته باشیم.
در ابتدای کار و بعد از ایجاد پروژه و ساختن دیتابیس به صورت Code First قطعا شما باید در پوشه Model کلاس خودتون رو برای ایجاد جدول User ایجاد کنید که این مباحث رو فعلا مطرح نمی کنیم چون مطمئنم دیگه اینها رو بلد هستید.
بنابراین در ابتدا یک PartialView رو به نام _PartialViewایجاد می کنید و کدهای زیر رو داخلش می نویسید :

 

 

@model RegistratiotnMvcCore_g.Model.UserAccount

<div id="mainlogindiv">


   
    <form asp-controller="Home" asp-action="Login" method="post" id="myform">
        <div asp-validation-summary="ModelOnly" class="text-danger"></div>

 

        <div class="form-group">
            <label asp-for="UserName"></label>
            <div>
                <input asp-for="UserName" class="form-control" placeholder="نام کاربری" id="txtUsername" />
                <span asp-validation-for="UserName" class="text-danger"></span>
            </div>
        </div>

 


        <div class="form-group">
            <label asp-for="Password"></label>
            <div>
                <input asp-for="Password" class="form-control" placeholder="رمز عبور" id="txtPassword" />
                <span asp-validation-for="Password" class="text-danger"></span>
            </div>
        </div>

 

        <div class="text-center">

            <button type="button" class="btn btn-success" style="width:70px; margin-left:30px;" id="btn_login">ورود</button>

            <a class="btn btn-danger" asp-area="" asp-controller="Home" asp-action="Register" style="width:70px; margin-left:30px;">ثبت نام</a>

        </div>


    </form>

</div>

 

در بخش کنترلر هم دستورات زیر می نویسیم

 

    [HttpGet]
        public IActionResult Login()
        {
            return PartialView();
        }

        [HttpPost]

 
        [ValidateAntiForgeryToken]
        public PartialViewResult Login(UserAccount user)
        {
            var accout = _context.userAccount.Where(u => u.UserName == user.UserName && u.Password == user.Password).FirstOrDefault();
     

            if (accout != null)
            {
                //اگر مشخصات صحیح بود باید کاربر را به سشن جاری که در ابتدای اجرای برنامه ایجاد کردیم، اضافه کنیم
                HttpContext.Session.SetString("UserID", accout.UserID.ToString());
                HttpContext.Session.SetString("UserName", accout.UserName);       


                ViewBag.UserName = HttpContext.Session.GetString("UserName");

                return PartialView("_welcome");

            }
            else
            {

        
                ViewBag.Message = "اطلاعات ورود اشتباه است";
                return PartialView("_ErrorMessage");
            }

            return null;

        }

 

در نهایت برای داشتن یک لاگین ایجکسی در Asp.net core در View مربوط به ایندکس کدهای زیر رو می نویسیم:

 

 

<script>

   // $("#btn_login").on("click", function (event) {
    $(document).on("click", "#btn_login", function (event) {
        
        if ($("#txtUsername").val().length == 0) {
            alert("نام کاربری را وارد نمایید");
            //   $("#txtUsername").css("background-color","lightcoral");

        }
        else {

            var data = $("#myform").serialize();
            $.ajax({
                type: "Post",
                url: "/Home/Login",
                data: data,
                dataType: "html",
                //     dataType: "json",
                success: function (response) {

                    //hide Register menu after Login
                    $('#mainMenu li').each(function () {
                        var text = $(this).text();
                        if (text.match("ثبت نام")) {
                            $(this).hide();
                        }
                    });
                    //insert Logout menu
                    $('#mainlogindiv').empty().html(response);
                    var menu = $('#logoutMenu').removeClass('.hidden').html();
                    $('#mainMenu').append(menu);
                }
            })
        }
    });

 

 

</script>

 

آموزش asp.net core

به این ترتیب می تونیم بدون رفرش شدن صفحه لاگین رو انجام بدیم.

 

فصلِ: 5 , تعداد قسمت ها: 176 , سطح: صفر تا صد

این فصل در یک نگاه:

در این فصل پس از بررسی سیستم مسیریابی و طراحی صفحه نمایش ویدیو ها، به سراغ پنل کاربری خواهیم رفت و مباحث Model Binding و…

توجه: این دوره آموزشی به صورت پیوسته بر اساس آخرین نسخه ی ASP.NET Core بروزرسانی خواهد شد.   آموزش صفر تا صد طراحی سایت اشتراک ویدیو مشابه آپارات با استفاده از  ASP.NET CORE  MVC 3.0 و V…
فصلِ: 8 , تعداد قسمت ها: 357 , سطح: صفر تا صد

این فصل در یک نگاه:

توضیحات کلی مجموعه: در این مجموعه قصد داریم تا فروشگاه اینترنتی دیجی کالا رو با Asp.Net Core3 پیاده سازی کنیم. ابتدا طراحی قالب دیجی کالا رو به صورت کامل انجام خواهیم داد. در مرحله میریم …
فصلِ: 5 , تعداد قسمت ها: 135 , سطح: صفر تا صد

این فصل در یک نگاه:

توضیحات کلی مجموعه: در این مجموعه آموزشی، با استفاده از جدیدترین تکنولوژی ها و ابزار های مایکروسافت (دات نت)، به یک پروژه جذاب مدیریت آگهی مشابه دیوار می پردازیم. این آموزش در دو بخش کلی و…
فصلِ: 1 , تعداد قسمت ها: 5 , سطح: متوسط

این فصل در یک نگاه:

ساخت محیط کاربریآموزش نحوه ی ارسال ایمیل در Asp.net MVCآموزش تنظیمات Gmail برای استفادهاستفاده از Yahooاستفاده از سرویس …

به نام خدا... در خدمتتون هستم با آموزش ارسال ایمیل در Asp.net MVC... ارسال ایمیل یکی از اجزای اصلی ییک سایت به شمار می رود و واقعا سایتی که برای اجزای مختلفش همانند ثبت کاربر جدید و یا ارسال…
فصلِ: 2 , تعداد قسمت ها: 62 , سطح: صفر تا صد

این فصل در یک نگاه:

فصل دوم در یک نگاه:فصل دوم در یک نگاه:…

در این پکیج به مبحث طراحی وب ، در قالب ساخت یک سایت فروشگاهی 5040 به آدرس http://5040.ir می پردازیم که به جرات مشهورترین و یکی از برترین فروشگاه های مجازی در کشور است. در این مجموعه قصد داری…
فصلِ: 1 , تعداد قسمت ها: 20 , سطح: متوسط

این فصل در یک نگاه:

  Blazor فریمورک معرفی شده از سوی مایکروسافت برای ساخت صفحات SPA با استفاده از زبان سی شارپ میباشد!!!      بله درست شنیدید ساخت صفحات وب با استفاده از سی شارپ از این به بعد ممکن خواهد …
فصلِ: 4 , تعداد قسمت ها: 78 , سطح: متوسط

این فصل در یک نگاه:

در این دوره آموزشی، وبسایت ورزش3 را با استفاده از ASP.NET Core پیاده سازی می کنیم و همچنین اپ اندروید آن را هم با Xamarin متصل به سرور سایت طراحی و در نهایت نحوه انتشار آن در مارکت هایی مثل …
فصلِ: 1 , تعداد قسمت ها: 15 , سطح: متوسط

این فصل در یک نگاه:

رشد و درآمدزایی یک وب سایت یا کسب و کار اینترنتی کاملا به ذوق و مهارت وب مستر یا همان مدیر اصلی وب سایت گره خورده و متاس…

 اصول مدیریت وب سایت برای وب مستر شدن برای موفقیت یک وب سایت لازم الاجراست. زیرا شما دوست دارید وب سایت خود را به کارخانه پولسازی تبدیل کنید. این واقعیت رویا نیست. هرکس این اصول را بداند به …

تولید شده توسط کلیک سایت

پشتیبانی آنلاین
آماده پاسخگویی هستیم
انتخاب تصویر جهت ارسال:
در حال ضبط صدا

(جهت توقف و یا لغو ضبط از دکمه های زیر استفاده کنید)

توقف و ارسال :
لغو ضبط
در حال حاضر تمامی کارشناسان آفلاین هستند. همواره می توانید با شماره تلگرام / واتساپ 09010005000 به صورت آنلاین با ما در ارتباط باشید. جهت ورود به واتساپ کلیک کنید
0 پیام جدید
پشتیبان در حال تایپ ...
ارسال تصویر ضبط صدا
0 کارشناسان آنلاین می باشند
این گفت و گو توسط پشتیبان به اتمام رسید