در این قسمت میخواهیم پایهی اعتبارسنجی و احراز هویت سمت سرور برنامهی کلاینت Blazor WASM را بر اساس JWT یکپارچه با ASP.NET Core Identity تامین کنیم. اگر با JWT آشنایی ندارید، نیاز است مطالب زیر را در ابتدا مطالعه کنید:
- « معرفی JSON Web Token » - اطلاعات بیشتر توسعهی IdentityUser
در قسمتهای 21 تا 23 ، روش نصب و یکپارچگی ASP.NET Core Identity را با یک برنامهی Blazor Serv ...
تا اینجا با اصول توسعهی برنامههای مبتنی بر Blazor Server آشنا شدیم. در ادامهی این سری، روش توسعه برنامههای مبتنی بر Blazor WASM را بررسی خواهیم کرد و پیش از شروع آن، باید بتوان امکانات سمت سرور مورد نیاز این نوع برنامههای سمت کلاینت را از طریق یک Web API تامین کرد که شامل دریافت و ارائهی اطلاعات و همچنین اعتبارسنجی و احراز هویت مبتنی بر JWT یکپارچهی با ASP.NET Core Identity است.
ایجاد پروژهی ASP.NET Core Web API
...
Blazor 5x - قسمت 23 - احراز هویت و اعتبارسنجی کاربران Blazor Server - بخش 3 - کار با نقشهای کاربران
در قسمت قبل ، روش یکپارچه سازی context مربوط به ASP.NET Core Identity را با یک برنامهی Blazor Server، بررسی کردیم. در این قسمت میخواهیم محدود کردن دسترسیها را بر اساس نقشهای کاربران و همچنین کدنویسی مستقیم، بررسی کنیم.
کار با Authentication State از طریق کدنویسی
فرض کنید در کامپوننت HotelRoomUpsert.razor نمیخواهیم دسترسیها را به کمک اعمال ویژگی attribute [Authorize]@ محدود کنیم؛ میخواهیم اینکار را از ...
در قسمت قبل ، نحوهی افزودن قالب ابتدایی ASP.NET Core Identity را به یک برنامهی Blazor Server بررسی کردیم. در این مطلب، قسمتهای ورود و خروج آنرا به همراه نمایش قسمتی از صفحه، تنها به کاربران اعتبارسنجی شده، بررسی میکنیم تا روش دسترسی به اطلاعات ASP.NET Core Identity را در یک برنامهی Blazor Server یکپارچه شدهی با آن، مطالعه کنیم. نمایش قسمتی از صفحه بر اساس وضعیت اعتبارسنجی کاربر
فرض کنید میخواهیم در کامپ ...
در ادامهی مثال این سری ، میخواهیم امکان ثبت و ویرایش اتاقها را (و یا امکانات رفاهی یک هتل را که به صورت تمرینی دقیقا مشابه افزودن مشخصات اتاقها، اضافه شده و کدهای آن از فایل پیوستی انتهای بحث قابل دریافت است) به کاربران اعتبارسنجی شدهی دارای نقش مدیریتی، محدودیت کنیم و نمیخواهیم عموم کاربران برنامه بتوانند در این قسمتها، تغییری را ایجاد کنند. برای این منظور از امکانات توکار و استاندارد ASP.NET Core Identity استفاده خواهیم کرد و این ...
در این قسمت میخواهیم بجای دریافت اطلاعات توضیحات یک اتاق، توسط یک text area متداول، برای مثال از Quill rich text editor استفاده کنیم. برای این منظور میتوان از کامپوننت Blazor محصور کنندهی آن به نام Blazored TextEditor کمک گرفت.
نصب کامپوننت Blazored TextEditor
ابتدا نیاز است بستهی نیوگت آنرا با اجرای دستور زیر، به پروژهی Blazor خود اضافه کرد: dotnet add package Blazored.TextEditor
و همچنین کتاب ...
Blazor 5x - قسمت 19 - کار با فرمها - بخش 7 - نکات ویژهی کار با EF-Core در برنامههای Blazor Server
تا قسمت قبل ، روشی را که برای کار با EF-Core درنظر گرفتیم، روش متداول کار با آن، در برنامههای ASP.NET Core Web API بود؛ یعنی این روش با برنامههای مبتنی بر Blazor WASM که از دو قسمت مجزای Web API سمت سرور و Web Assembly سمت کلاینت تشکیل شدهاند، به خوبی جواب میدهد؛ اما ... با Blazor Server یکپارچه که تمام قسمتهای مدیریتی آن سمت سرور رخ میدهند، خیر! در این مطلب، دلایل این موضوع را به همراه ارائه راهحلی، بررسی خواهیم کرد.
ط ...
در این قسمت میخواهیم اطلاعات اتاقهای ثبت شده را به همراه تصاویر مرتبط با آنها، حذف کنیم و همچنین به یک خطای مهم در حین کار با EF-Core برسیم و متوجه شویم که روش کار با DbContext در برنامههای مبتنی بر Blazor Server .... با روش کار متداول با آن در برنامههای Web API، یکی نیست!
مشکل حذف تصاویر آپلود شده
در قسمت قبل ، این امکان را مهیا کردیم که کاربران بتوانند پیش از ثبت اطلاعات یک اتاق، تصاویر آنرا به سرور آپلود ...
از زمان Blazor 5x، پشتیبانی توکار از آپلود فایلها، به آن اضافه شدهاست و پیش از آن میبایستی از کامپوننتهای ثالث استفاده میشد. در این قسمت نحوهی استفاده از کامپوننت آپلود فایلهای Blazor را بررسی میکنیم. همچنین یک نمونه مثال، از فرمهای master-details را نیز با هم مرور خواهیم کرد. افزودن فیلد آپلود تصاویر، به فرم ثبت اطلاعات یک اتاق
در ادامه به کامپوننت Pages\HotelRoom\HotelRoomUpsert.razor که تا این قسمت آن ...
در ادامه میخواهیم برای هر اتاق ثبت شده، تعدادی تصویر مرتبط را نیز به سرور آپلود کرده و مشخصات آنها را در بانک اطلاعاتی ثبت کنیم. به همین جهت در این قسمت سرویس ثبت اطلاعات تصاویر در بانک اطلاعاتی و سرویس آپلود فایلها را تهیه میکنیم. تعریف موجودیت و DbSet تصاویر یک اتاق هتل
برای اینکه بتوان اطلاعات تصاویر آپلودی را در بانک اطلاعاتی ثبت کرد، نیاز است یک رابطهی یک به چند را بین یک اتاق و تصاویر مرتبط با آن برقرار کرد. ب ...