آموزش یک برنامه با ASPNET Core و Angular از ابتدا بسازید

Build an app with ASPNET Core and Angular from scratch

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: یک مثال عملی از نحوه ساخت یک برنامه با ASP.NET Core API و Angular از ابتدا تا انتها آموزش ساخت یک برنامه وب از ابتدا تا انتشار با استفاده از ASPNET Core (v2.1)، Entity Framework Core و Angular (v6) Students کسانی که این دوره را کامل می‌کنند، درک عملی از Angular و ASPNET Core خواهند داشت. درک نحوه ساختار یک برنامه Angular با استفاده از بهترین شیوه‌ها یاد بگیرید چگونه اجزای شخص ثالث را در برنامه Angular ادغام کنید از کد ویژوال استودیو به طور موثر برای بهبود گردش کار استفاده کنید. استفاده از AutoMapper پیاده‌سازی عکس با کشیدن و رها کردن آپلود ادغام در یک پلت فرم ابری پیاده سازی یک سیستم پیام خصوصی پیاده سازی فیلتر کردن، مرتب سازی و صفحه بندی داده ها نمایش اعلان ها در Angular Implement Authentication با استفاده از نشانه های تأیید اعتبار JWT مدیریت خطاها در API و SPA Persist داده ها با استفاده از Entity Framework Core اعلان های زمان واقعی و حضور با استفاده از SignalR پیش نیازها:Hello world تجربه در ASPNET Core و Angular A passion for wan یاد بگیرید که چگونه یک وب اپلیکیشن کاملا کاربردی بسازید

این دوره برای Net 7.0 و Angular 14 به روز شده و کاملاً به روز شده است.

آیا اصول اولیه ASP.NET Core و Angular را یاد گرفته اید؟ مطمئن نیستید بعد کجا بروید؟ این دوره باید بتواند در این زمینه کمک کند. در این دوره ما از هیچ شروع می کنیم و به تدریج API و Angular front end خود را ایجاد می کنیم تا زمانی که یک Web Application کاملاً کاربردی داشته باشیم که سپس در IIS و یک سرور لینوکس منتشر می کنیم.

اینها 2 مورد از داغترین فریم ورکهای در حال حاضر برای "back-end" (هسته ASP.NET مایکروسافت) و "front-end" (گوگل Angular) هستند و ارزش وقت گذاشتن برای یادگیری را دارند.

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

این دوره در نوامبر 2022 با استفاده از Net 7.0 و Angular v14 به‌روز است و با تکامل این چارچوب‌ها، این دوره با آن تکامل خواهد یافت.

برخی از نظرات عالی این دوره را بخوانید:

جیم می‌گوید "بهترین دوره آموزشی برای ساختن API در هسته Net و کار با Angular!"

دانیال می‌گوید: "این یک دوره آموزشی کامل مبتنی بر پروژه از ابتدا تا انتها با تجربه دنیای واقعی با استفاده از فناوری‌هایی است که در حال حاضر در بازار مورد تقاضا هستند. افرادی که علاقه‌مند به یادگیری آخرین فناوری‌ها هستند باید این دوره را در نظر بگیرند. "

در اینجا مواردی وجود دارد که در این دوره در مورد آنها خواهید آموخت:

  • تنظیم محیط توسعه دهنده

  • ایجاد ASP.NET Core WebAPI و برنامه Angular با استفاده از DotNet CLI و Angular CLI

  • افزودن یک تابع ورود و ثبت نام سمت کلاینت به برنامه Angular ما

  • افزودن اجزای شخص ثالث برای افزودن مقداری پیتزا به برنامه

  • افزودن مسیریابی به برنامه Angular و ایمن کردن مسیرها.

  • استفاده از Automapper در ASP.NET Core

  • ایجاد رابط کاربری عالی با استفاده از Bootstrap

  • افزودن قابلیت آپلود عکس و همچنین یک گالری جذاب در Angular

  • فرم‌های الگوی زاویه‌ای و فرم‌های واکنشی و اعتبارسنجی

  • صفحه‌بندی، مرتب‌سازی و فیلتر کردن

  • افزودن یک سیستم پیام خصوصی به برنامه

  • انتشار برنامه رایگان در Heroku

  • استفاده از SignalR برای حضور بی‌درنگ و پیام‌رسانی زنده بین کاربران

  • خیلی چیزهای دیگر نیز

ابزارهایی که برای این دوره نیاز دارید

در این دوره، تمام دروس با استفاده از Visual Studio Code، یک ویرایشگر کد متقابل پلت فرم رایگان (و خارق العاده) نشان داده می شوند. البته می توانید از هر ویرایشگر کدی که دوست دارید و هر سیستم عاملی که دوست دارید استفاده کنید... به شرط اینکه ویندوز، لینوکس یا مک باشد

آیا این دوره برای شماست؟

این دوره بسیار کاربردی است، بیش از 90٪ از درس ها شامل کدنویسی شما با من در این پروژه می شود. اگر شما از آن دسته افرادی هستید که با انجام کار بیشترین بهره را از یادگیری می برید، این دوره قطعا برای شما مناسب است.

در این دوره، ما یک نمونه برنامه دوستیابی را کاملاً از ابتدا با استفاده از DotNet CLI و Angular CLI خواهیم ساخت تا به ما در شروع کار کمک کند. تنها چیزی که برای شروع نیاز دارید یک کامپیوتر با سیستم عامل مورد علاقه خود و اشتیاق به یادگیری نحوه ساخت یک برنامه با استفاده از ASP.NET Core و Angular است.


سرفصل ها و درس ها

معرفی Introduction

  • معرفی دوره Introduction to the course

  • راه اندازی محیط توسعه دهنده Setting up the developer environment

  • کمک گرفتن Getting help

  • دارایی های دوره و کد منبع Course assets and source code

معرفی Introduction

  • معرفی دوره Introduction to the course

  • راه اندازی محیط توسعه دهنده Setting up the developer environment

  • کمک گرفتن Getting help

  • دارایی های دوره و کد منبع Course assets and source code

ساخت اسکلت راه رفتن قسمت اول - API Building a walking skeleton Part One - API

  • معرفی Introduction

  • ایجاد پروژه .Net API با استفاده از dotnet CLI Creating the .Net API Project using the dotnet CLI

  • تنظیم کد VS برای کار با سی شارپ Setting up VS code to work with C#

  • آشنایی با فایل های پروژه API Getting to know the API project files

  • ایجاد اولین موجودیت ما Creating our first Entity

  • مقدمه ای بر Entity Framework Introduction to Entity Framework

  • افزودن Entity Framework به پروژه ما Adding Entity Framework to our project

  • اضافه کردن کلاس DbContext Adding a DbContext class

  • ایجاد رشته اتصال Creating the Connection string

  • ایجاد پایگاه داده با استفاده از Entity Framework Code برای اولین بار مهاجرت Creating the database using Entity Framework Code first migrations

  • اضافه کردن یک API Controller جدید Adding a new API Controller

  • کد ما را ناهمزمان کنیم Making our code Asynchronous

  • ذخیره کد ما در کنترل منبع Saving our code into Source control

  • خلاصه بخش 2 Section 2 Summary

ساخت اسکلت راه رفتن قسمت اول - API Building a walking skeleton Part One - API

  • معرفی Introduction

  • ایجاد پروژه .Net API با استفاده از dotnet CLI Creating the .Net API Project using the dotnet CLI

  • تنظیم کد VS برای کار با سی شارپ Setting up VS code to work with C#

  • آشنایی با فایل های پروژه API Getting to know the API project files

  • ایجاد اولین موجودیت ما Creating our first Entity

  • مقدمه ای بر Entity Framework Introduction to Entity Framework

  • افزودن Entity Framework به پروژه ما Adding Entity Framework to our project

  • اضافه کردن کلاس DbContext Adding a DbContext class

  • ایجاد رشته اتصال Creating the Connection string

  • ایجاد پایگاه داده با استفاده از Entity Framework Code برای اولین بار مهاجرت Creating the database using Entity Framework Code first migrations

  • اضافه کردن یک API Controller جدید Adding a new API Controller

  • کد ما را ناهمزمان کنیم Making our code Asynchronous

  • ذخیره کد ما در کنترل منبع Saving our code into Source control

  • خلاصه بخش 2 Section 2 Summary

ساخت اسکلت راه رفتن قسمت دوم - زاویه ای Building a walking skeleton Part Two - Angular

  • معرفی Introduction

  • ساخت اپلیکیشن Angular Creating the Angular application

  • اجرای پروژه زاویه ای و بررسی بوت استرپ برنامه Running the angular project and reviewing the bootstrap of the app

  • افزودن پسوندهای VS Code برای کار با Angular Adding VS Code extensions to work with Angular

  • ایجاد درخواست های HTTP در Angular Making HTTP requests in Angular

  • افزودن پشتیبانی CORS در API Adding CORS support in the API

  • نمایش کاربران واکشی شده در مرورگر Displaying the fetched users in the browser

  • اضافه کردن بوت استرپ و فونت عالی Adding bootstrap and font-awesome

  • استفاده از HTTPS در زاویه ای - MAC Using HTTPS in angular - MAC

  • استفاده از HTTPS در زاویه ای - WINDOWS Using HTTPS in angular - WINDOWS

  • ذخیره در کنترل منبع Saving into source control

  • خلاصه بخش 3 Section 3 summary

ساخت اسکلت راه رفتن قسمت دوم - زاویه ای Building a walking skeleton Part Two - Angular

  • معرفی Introduction

  • ساخت اپلیکیشن Angular Creating the Angular application

  • اجرای پروژه زاویه ای و بررسی بوت استرپ برنامه Running the angular project and reviewing the bootstrap of the app

  • افزودن پسوندهای VS Code برای کار با Angular Adding VS Code extensions to work with Angular

  • ایجاد درخواست های HTTP در Angular Making HTTP requests in Angular

  • افزودن پشتیبانی CORS در API Adding CORS support in the API

  • نمایش کاربران واکشی شده در مرورگر Displaying the fetched users in the browser

  • اضافه کردن بوت استرپ و فونت عالی Adding bootstrap and font-awesome

  • استفاده از HTTPS در زاویه ای - MAC Using HTTPS in angular - MAC

  • استفاده از HTTPS در زاویه ای - WINDOWS Using HTTPS in angular - WINDOWS

  • ذخیره در کنترل منبع Saving into source control

  • خلاصه بخش 3 Section 3 summary

اصول احراز هویت Authentication basics

  • معرفی Introduction

  • ذخیره سازی ایمن رمزهای عبور Safe storage of passwords

  • به روز رسانی موجودیت کاربر Updating the user entity

  • ایجاد یک کنترلر API پایه Creating a base API controller

  • ایجاد یک کنترل کننده حساب با یک نقطه پایانی ثبت Creating an Account Controller with a register endpoint

  • با استفاده از دیباگر Using the debugger

  • استفاده از DTO Using DTOs

  • افزودن اعتبارسنجی Adding validation

  • افزودن نقطه پایانی ورود به سیستم Adding a login endpoint

  • توکن های وب JSON JSON web tokens

  • اضافه کردن یک سرویس رمزی Adding a token service

  • اضافه کردن منطق توکن ایجاد Adding the create token logic

  • ایجاد یک کاربر DTO و بازگرداندن رمز Creating a User DTO and returning the token

  • افزودن میان افزار احراز هویت Adding the authentication middleware

  • افزودن روش های توسعه Adding extension methods

  • خلاصه بخش 4 Section 4 summary

اصول احراز هویت Authentication basics

  • معرفی Introduction

  • ذخیره سازی ایمن رمزهای عبور Safe storage of passwords

  • به روز رسانی موجودیت کاربر Updating the user entity

  • ایجاد یک کنترلر API پایه Creating a base API controller

  • ایجاد یک کنترل کننده حساب با یک نقطه پایانی ثبت Creating an Account Controller with a register endpoint

  • با استفاده از دیباگر Using the debugger

  • استفاده از DTO Using DTOs

  • افزودن اعتبارسنجی Adding validation

  • افزودن نقطه پایانی ورود به سیستم Adding a login endpoint

  • توکن های وب JSON JSON web tokens

  • اضافه کردن یک سرویس رمزی Adding a token service

  • اضافه کردن منطق توکن ایجاد Adding the create token logic

  • ایجاد یک کاربر DTO و بازگرداندن رمز Creating a User DTO and returning the token

  • افزودن میان افزار احراز هویت Adding the authentication middleware

  • افزودن روش های توسعه Adding extension methods

  • خلاصه بخش 4 Section 4 summary

ورود و ثبت نام مشتری Client login and register

  • معرفی Introduction

  • ایجاد نوار ناوبری Creating a nav bar

  • مقدمه ای بر قالب های Angular Introduction to Angular template forms

  • آشنایی با خدمات Angular Introduction to Angular services

  • تزریق خدمات به قطعات Injecting services into components

  • استفاده از شرطی برای نمایش و حذف محتوا Using conditionals to show and remove content

  • استفاده از اجزای بوت استرپ زاویه ای - کشویی Using the angular bootstrap components - dropdown

  • مقدمه ای بر مشاهده پذیرها Introduction to observables

  • تداوم ورود Persisting the login

  • با استفاده از لوله async Using the async pipe

  • افزودن صفحه اصلی Adding a home page

  • افزودن فرم ثبت نام Adding a register form

  • ارتباط والدین با کودک Parent to child communication

  • ارتباط کودک با والدین Child to parent communication

  • اتصال روش ثبت به سرویس Hooking up the register method to the service

  • خلاصه بخش 5 Section 5 summary

ورود و ثبت نام مشتری Client login and register

  • معرفی Introduction

  • ایجاد نوار ناوبری Creating a nav bar

  • مقدمه ای بر قالب های Angular Introduction to Angular template forms

  • آشنایی با خدمات Angular Introduction to Angular services

  • تزریق خدمات به قطعات Injecting services into components

  • استفاده از شرطی برای نمایش و حذف محتوا Using conditionals to show and remove content

  • استفاده از اجزای بوت استرپ زاویه ای - کشویی Using the angular bootstrap components - dropdown

  • مقدمه ای بر مشاهده پذیرها Introduction to observables

  • تداوم ورود Persisting the login

  • با استفاده از لوله async Using the async pipe

  • افزودن صفحه اصلی Adding a home page

  • افزودن فرم ثبت نام Adding a register form

  • ارتباط والدین با کودک Parent to child communication

  • ارتباط کودک با والدین Child to parent communication

  • اتصال روش ثبت به سرویس Hooking up the register method to the service

  • خلاصه بخش 5 Section 5 summary

مسیریابی در Angular Routing in Angular

  • معرفی Introduction

  • ایجاد چند مؤلفه دیگر Creating some more components

  • افزودن پیوندهای ناو Adding the nav links

  • مسیریابی در کد Routing in code

  • افزودن سرویس نان تست برای اعلان ها Adding a toast service for notifications

  • اضافه کردن یک محافظ مسیر زاویه ای Adding an Angular route guard

  • افزودن یک مسیر ساختگی Adding a dummy route

  • اضافه کردن یک موضوع جدید Adding a new theme

  • مرتب کردن ماژول برنامه با استفاده از یک ماژول مشترک Tidying up the app module by using a shared module

  • خلاصه بخش 6 Section 6 summary

مسیریابی در Angular Routing in Angular

  • معرفی Introduction

  • ایجاد چند مؤلفه دیگر Creating some more components

  • افزودن پیوندهای ناو Adding the nav links

  • مسیریابی در کد Routing in code

  • افزودن سرویس نان تست برای اعلان ها Adding a toast service for notifications

  • اضافه کردن یک محافظ مسیر زاویه ای Adding an Angular route guard

  • افزودن یک مسیر ساختگی Adding a dummy route

  • اضافه کردن یک موضوع جدید Adding a new theme

  • مرتب کردن ماژول برنامه با استفاده از یک ماژول مشترک Tidying up the app module by using a shared module

  • خلاصه بخش 6 Section 6 summary

رسیدگی به خطا Error handling

  • معرفی Introduction

  • ایجاد یک کنترل کننده خطا برای تست خطاها Creating an error controller for testing errors

  • رسیدگی به خطاهای سرور Handling server errors

  • میان افزار رسیدگی به استثنا Exception handling middleware

  • خطاهای تست در مشتری Testing errors in the client

  • اضافه کردن یک رهگیر خطا Adding an error interceptor

  • خطاهای اعتبارسنجی Validation errors

  • رسیدگی پیدا نشد Handling not found

  • افزودن صفحه خطای سرور Adding a server error page

  • خلاصه بخش 7 Section 7 summary

رسیدگی به خطا Error handling

  • معرفی Introduction

  • ایجاد یک کنترل کننده خطا برای تست خطاها Creating an error controller for testing errors

  • رسیدگی به خطاهای سرور Handling server errors

  • میان افزار رسیدگی به استثنا Exception handling middleware

  • خطاهای تست در مشتری Testing errors in the client

  • اضافه کردن یک رهگیر خطا Adding an error interceptor

  • خطاهای اعتبارسنجی Validation errors

  • رسیدگی پیدا نشد Handling not found

  • افزودن صفحه خطای سرور Adding a server error page

  • خلاصه بخش 7 Section 7 summary

گسترش API Extending the API

  • معرفی Introduction

  • گسترش نهاد کاربر Extending the user entity

  • افزودن پسوند DateTime برای محاسبه سن Adding a DateTime extension to calculate age

  • روابط چارچوب نهاد Entity Framework relationships

  • تولید داده های بذر Generating seed data

  • کاشت داده ها قسمت اول Seeding data part one

  • کاشت داده ها قسمت دوم Seeding data part two

  • الگوی مخزن The repository pattern

  • ایجاد یک مخزن Creating a repository

  • به روز رسانی کنترل کننده کاربران Updating the users controller

  • افزودن DTO برای اعضا Adding a DTO for Members

  • اضافه کردن AutoMapper Adding AutoMapper

  • با استفاده از AutoMapper Using AutoMapper

  • پیکربندی AutoMapper Configuring AutoMapper

  • استفاده از پسوندهای قابل پرسش AutoMapper Using AutoMapper queryable extensions

  • خلاصه بخش 8 Section 8 summary

گسترش API Extending the API

  • معرفی Introduction

  • گسترش نهاد کاربر Extending the user entity

  • افزودن پسوند DateTime برای محاسبه سن Adding a DateTime extension to calculate age

  • روابط چارچوب نهاد Entity Framework relationships

  • تولید داده های بذر Generating seed data

  • کاشت داده ها قسمت اول Seeding data part one

  • کاشت داده ها قسمت دوم Seeding data part two

  • الگوی مخزن The repository pattern

  • ایجاد یک مخزن Creating a repository

  • به روز رسانی کنترل کننده کاربران Updating the users controller

  • افزودن DTO برای اعضا Adding a DTO for Members

  • اضافه کردن AutoMapper Adding AutoMapper

  • با استفاده از AutoMapper Using AutoMapper

  • پیکربندی AutoMapper Configuring AutoMapper

  • استفاده از پسوندهای قابل پرسش AutoMapper Using AutoMapper queryable extensions

  • خلاصه بخش 8 Section 8 summary

ساخت رابط کاربری Building the User Interface

  • معرفی Introduction

  • با استفاده از TypeScript Using TypeScript

  • ایجاد رابط اعضا Creating the member interface

  • افزودن سرویس عضو Adding a member service

  • بازیابی لیست اعضا Retrieving the list of members

  • ایجاد کارت های عضو Creating member cards

  • اضافه کردن سبک به کارت ها Adding some style to the cards

  • اضافه کردن دکمه های متحرک Adding animated buttons

  • استفاده از یک رهگیر برای ارسال توکن Using an interceptor to send the token

  • مسیریابی به صفحه جزئیات Routing to the detailed page

  • استایل دادن به صفحه جزئیات اعضا Styling the member detailed page

  • یک ظاهر طراحی عضو صفحه مفصل قسمت دوم Styling the member detailed page part two

  • افزودن گالری عکس Adding a photo gallery

  • خلاصه بخش 9 Section 9 summary

ساخت رابط کاربری Building the User Interface

  • معرفی Introduction

  • با استفاده از TypeScript Using TypeScript

  • ایجاد رابط اعضا Creating the member interface

  • افزودن سرویس عضو Adding a member service

  • بازیابی لیست اعضا Retrieving the list of members

  • ایجاد کارت های عضو Creating member cards

  • اضافه کردن سبک به کارت ها Adding some style to the cards

  • اضافه کردن دکمه های متحرک Adding animated buttons

  • استفاده از یک رهگیر برای ارسال توکن Using an interceptor to send the token

  • مسیریابی به صفحه جزئیات Routing to the detailed page

  • استایل دادن به صفحه جزئیات اعضا Styling the member detailed page

  • یک ظاهر طراحی عضو صفحه مفصل قسمت دوم Styling the member detailed page part two

  • افزودن گالری عکس Adding a photo gallery

  • خلاصه بخش 9 Section 9 summary

به روز رسانی منابع Updating resources

  • معرفی Introduction

  • ایجاد یک جزء ویرایش اعضا Creating a member edit component

  • ایجاد فرم ویرایش قالب Creating the edit template form

  • افزودن قابلیت به روز رسانی Adding the update functionality

  • افزودن محافظ مسیر Can Deactivate Adding a Can Deactivate route guard

  • تداوم تغییرات در API Persisting the changes in the API

  • به روز رسانی کاربر در برنامه مشتری Updating the user in the client app

  • اضافه کردن نشانگرهای بارگذاری Adding loading indicators

  • استفاده از سرویس برای ذخیره وضعیت Using the service to store state

  • خلاصه بخش 10 Section 10 summary

به روز رسانی منابع Updating resources

  • معرفی Introduction

  • ایجاد یک جزء ویرایش اعضا Creating a member edit component

  • ایجاد فرم ویرایش قالب Creating the edit template form

  • افزودن قابلیت به روز رسانی Adding the update functionality

  • افزودن محافظ مسیر Can Deactivate Adding a Can Deactivate route guard

  • تداوم تغییرات در API Persisting the changes in the API

  • به روز رسانی کاربر در برنامه مشتری Updating the user in the client app

  • اضافه کردن نشانگرهای بارگذاری Adding loading indicators

  • استفاده از سرویس برای ذخیره وضعیت Using the service to store state

  • خلاصه بخش 10 Section 10 summary

افزودن قابلیت آپلود عکس Adding photo upload functionality

  • معرفی Introduction

  • حساب ابری Cloudinary Account

  • پیکربندی ابری در API Configuring cloudinary in the API

  • افزودن سرویس عکس Adding a photo service

  • به روز رسانی کنترل کننده کاربران Updating the users controller

  • تست آپلود عکس Testing the photo upload

  • با استفاده از متد Created At Route Using the Created At Route method

  • اضافه کردن یک جزء ویرایشگر عکس Adding a photo editor component

  • اضافه کردن آپلود کننده عکس Adding a photo uploader

  • افزودن آپلودکننده عکس قسمت دوم Adding a photo uploader part two

  • تنظیم عکس اصلی در API Setting the main photo in the API

  • افزودن تصویر اصلی عکس به نوار ناوبری Adding the main photo image to the nav bar

  • تنظیم عکس اصلی در مشتری Setting the main photo in the client

  • حذف عکس ها - API Deleting photos - API

  • حذف عکس ها - مشتری Deleting photos - Client

  • خلاصه بخش 11 Section 11 summary

افزودن قابلیت آپلود عکس Adding photo upload functionality

  • معرفی Introduction

  • حساب ابری Cloudinary Account

  • پیکربندی ابری در API Configuring cloudinary in the API

  • افزودن سرویس عکس Adding a photo service

  • به روز رسانی کنترل کننده کاربران Updating the users controller

  • تست آپلود عکس Testing the photo upload

  • با استفاده از متد Created At Route Using the Created At Route method

  • اضافه کردن یک جزء ویرایشگر عکس Adding a photo editor component

  • اضافه کردن آپلود کننده عکس Adding a photo uploader

  • افزودن آپلودکننده عکس قسمت دوم Adding a photo uploader part two

  • تنظیم عکس اصلی در API Setting the main photo in the API

  • افزودن تصویر اصلی عکس به نوار ناوبری Adding the main photo image to the nav bar

  • تنظیم عکس اصلی در مشتری Setting the main photo in the client

  • حذف عکس ها - API Deleting photos - API

  • حذف عکس ها - مشتری Deleting photos - Client

  • خلاصه بخش 11 Section 11 summary

اشکال واکنشی Reactive forms

  • معرفی Introduction

  • معرفی فرم های واکنشی Reactive forms introduction

  • اعتبار سنجی سمت مشتری Client side validation

  • افزودن اعتبار سنجی سفارشی Adding custom validators

  • بازخورد اعتبار سنجی Validation feedback

  • ایجاد یک ورودی متنی قابل استفاده مجدد Creating a reusable text input

  • با استفاده از سرویس فرم ساز Using the form builder service

  • گسترش فرم ثبت نام Expanding the register form

  • افزودن ورودی تاریخ قابل استفاده مجدد Adding a reusable date input

  • به روز رسانی روش ثبت API Updating the API register method

  • ثبت نام سمت مشتری Client side registration

  • خلاصه بخش 12 Section 12 summary

اشکال واکنشی Reactive forms

  • معرفی Introduction

  • معرفی فرم های واکنشی Reactive forms introduction

  • اعتبار سنجی سمت مشتری Client side validation

  • افزودن اعتبار سنجی سفارشی Adding custom validators

  • بازخورد اعتبار سنجی Validation feedback

  • ایجاد یک ورودی متنی قابل استفاده مجدد Creating a reusable text input

  • با استفاده از سرویس فرم ساز Using the form builder service

  • گسترش فرم ثبت نام Expanding the register form

  • افزودن ورودی تاریخ قابل استفاده مجدد Adding a reusable date input

  • به روز رسانی روش ثبت API Updating the API register method

  • ثبت نام سمت مشتری Client side registration

  • خلاصه بخش 12 Section 12 summary

صفحه بندی، مرتب سازی و فیلتر کردن Paging, Sorting and Filtering

  • معرفی Introduction

  • اضافه کردن یک کلاس لیست صفحه شده Adding a paged list class

  • اضافه کردن کلاس های کمکی برای صفحه بندی Adding helper classes for pagination

  • استفاده از کلاس های صفحه بندی Using the pagination classes

  • راه اندازی صفحه بندی مشتری Setting up client pagination

  • با استفاده از مولفه صفحه بندی بوت استرپ زاویه ای Using the angular bootstrap pagination component

  • افزودن فیلتر به API Adding filtering to the API

  • افزودن فیلترهای اضافی Adding additional filters

  • تمیز کردن سرویس اعضا Cleaning up the member service

  • اضافه کردن دکمه های فیلتر به مشتری Adding filter buttons to the client

  • افزودن قابلیت مرتب سازی Adding sorting functionality

  • افزودن فیلتر عمل Adding an action filter

  • بهینه سازی فیلتر اکشن Last Active Making the Last Active action filter more optimal

  • مرتب سازی بر اساس مشتری Sorting on the client

  • قالب بندی تاریخ ها Formatting dates

  • بازیابی حافظه پنهان برای اعضا Restoring the caching for members

  • در حال بازیابی حافظه پنهان برای اعضا جزئیات Restoring caching for member detailed

  • به خاطر سپردن فیلترها برای یک کاربر در سرویس Remembering the filters for a user in the service

  • خلاصه بخش 13 Section 13 summary

صفحه بندی، مرتب سازی و فیلتر کردن Paging, Sorting and Filtering

  • معرفی Introduction

  • اضافه کردن یک کلاس لیست صفحه شده Adding a paged list class

  • اضافه کردن کلاس های کمکی برای صفحه بندی Adding helper classes for pagination

  • استفاده از کلاس های صفحه بندی Using the pagination classes

  • راه اندازی صفحه بندی مشتری Setting up client pagination

  • با استفاده از مولفه صفحه بندی بوت استرپ زاویه ای Using the angular bootstrap pagination component

  • افزودن فیلتر به API Adding filtering to the API

  • افزودن فیلترهای اضافی Adding additional filters

  • تمیز کردن سرویس اعضا Cleaning up the member service

  • اضافه کردن دکمه های فیلتر به مشتری Adding filter buttons to the client

  • افزودن قابلیت مرتب سازی Adding sorting functionality

  • افزودن فیلتر عمل Adding an action filter

  • بهینه سازی فیلتر اکشن Last Active Making the Last Active action filter more optimal

  • مرتب سازی بر اساس مشتری Sorting on the client

  • قالب بندی تاریخ ها Formatting dates

  • بازیابی حافظه پنهان برای اعضا Restoring the caching for members

  • در حال بازیابی حافظه پنهان برای اعضا جزئیات Restoring caching for member detailed

  • به خاطر سپردن فیلترها برای یک کاربر در سرویس Remembering the filters for a user in the service

  • خلاصه بخش 13 Section 13 summary

افزودن قابلیت لایک کاربر Adding the Like User feature

  • معرفی Introduction

  • افزودن موجودیت لایک Adding a likes entity

  • افزودن مخزن لایک Adding a likes repository

  • پیاده سازی مخزن لایک Implementing the likes repository

  • روش های کنترل کننده برای لایک ها ویژگی Controller methods for the likes feature

  • تنظیم توابع لایک در برنامه Angular Setting up the likes functions in the Angular app

  • اضافه کردن مولفه لایک Adding the likes component

  • اضافه کردن صفحه بندی برای لایک ها Adding pagination for the likes

  • صفحه بندی لایک ها روی مشتری Paginating the likes on the client

  • خلاصه بخش 14 Section 14 summary

افزودن قابلیت لایک کاربر Adding the Like User feature

  • معرفی Introduction

  • افزودن موجودیت لایک Adding a likes entity

  • افزودن مخزن لایک Adding a likes repository

  • پیاده سازی مخزن لایک Implementing the likes repository

  • روش های کنترل کننده برای لایک ها ویژگی Controller methods for the likes feature

  • تنظیم توابع لایک در برنامه Angular Setting up the likes functions in the Angular app

  • اضافه کردن مولفه لایک Adding the likes component

  • اضافه کردن صفحه بندی برای لایک ها Adding pagination for the likes

  • صفحه بندی لایک ها روی مشتری Paginating the likes on the client

  • خلاصه بخش 14 Section 14 summary

افزودن قابلیت پیام رسانی Adding the messaging feature

  • معرفی Introduction

  • تنظیم نهادها برای پیام رسانی Setting up the entities for messaging

  • راه اندازی مخزن پیام Setting up the message repository

  • راه اندازی نمایه های خودکار Setting up the automapper profiles

  • اضافه کردن یک کنترل کننده پیام Adding a message controller

  • دریافت پیام ها از مخزن Getting the messages from the Repo

  • دریافت رشته پیام برای 2 کاربر Getting the message thread for 2 users

  • راه اندازی برنامه Angular برای پیام رسانی Setting up the Angular app for messaging

  • طراحی صندوق ورودی Designing the inbox

  • اضافه کردن رشته پیام در مشتری Adding the message thread in the client

  • سبک دادن به رشته پیام Styling the message thread

  • فعال کردن تب پیام Activating the message tab

  • استفاده از پارامترهای پرس و جو Using query params

  • استفاده از Route Resolver ها Using route resolvers

  • ارسال پیام Sending messages

  • رفع عجایب عکس Fixing the photo weirdness

  • حذف پیام ها در API Deleting messages on the API

  • حذف پیام های روی مشتری Deleting messages on the client

  • خلاصه بخش 15 Section 15 summary

افزودن قابلیت پیام رسانی Adding the messaging feature

  • معرفی Introduction

  • تنظیم نهادها برای پیام رسانی Setting up the entities for messaging

  • راه اندازی مخزن پیام Setting up the message repository

  • راه اندازی نمایه های خودکار Setting up the automapper profiles

  • اضافه کردن یک کنترل کننده پیام Adding a message controller

  • دریافت پیام ها از مخزن Getting the messages from the Repo

  • دریافت رشته پیام برای 2 کاربر Getting the message thread for 2 users

  • راه اندازی برنامه Angular برای پیام رسانی Setting up the Angular app for messaging

  • طراحی صندوق ورودی Designing the inbox

  • اضافه کردن رشته پیام در مشتری Adding the message thread in the client

  • سبک دادن به رشته پیام Styling the message thread

  • فعال کردن تب پیام Activating the message tab

  • استفاده از پارامترهای پرس و جو Using query params

  • استفاده از Route Resolver ها Using route resolvers

  • ارسال پیام Sending messages

  • رفع عجایب عکس Fixing the photo weirdness

  • حذف پیام ها در API Deleting messages on the API

  • حذف پیام های روی مشتری Deleting messages on the client

  • خلاصه بخش 15 Section 15 summary

مدیریت هویت و نقش Identity and role management

  • معرفی Introduction

  • راه اندازی نهادها Setting up the entities

  • پیکربندی DbContext Configuring the DbContext

  • پیکربندی کلاس راه اندازی Configuring the startup class

  • بازسازی و اضافه کردن یک مهاجرت جدید Refactoring and adding a new migration

  • به روز رسانی روش بذر Updating the seed method

  • به روز رسانی کنترل کننده حساب Updating the account controller

  • اضافه کردن نقش به برنامه Adding roles to the app

  • افزودن نقش ها به توکن JWT Adding the roles to the JWT token

  • افزودن مجوز مبتنی بر خط مشی Adding policy based authorisation

  • جذب نقش های کاربران Getting the users with roles

  • ویرایش نقش های کاربر Editing user roles

  • اضافه کردن یک جزء مدیریت Adding an admin component

  • اضافه کردن یک محافظ مدیریت Adding an admin guard

  • افزودن یک دستورالعمل سفارشی Adding a custom directive

  • افزودن مؤلفه نقش های ویرایش Adding the edit roles component

  • راه اندازی مدال Setting up modals

  • ویرایش نقش ها در مشتری Editing roles in the client

  • تدوین نقش ها قسمت دوم Editing roles part two

  • خلاصه بخش 16 Section 16 summary

مدیریت هویت و نقش Identity and role management

  • معرفی Introduction

  • راه اندازی نهادها Setting up the entities

  • پیکربندی DbContext Configuring the DbContext

  • پیکربندی کلاس راه اندازی Configuring the startup class

  • بازسازی و اضافه کردن یک مهاجرت جدید Refactoring and adding a new migration

  • به روز رسانی روش بذر Updating the seed method

  • به روز رسانی کنترل کننده حساب Updating the account controller

  • اضافه کردن نقش به برنامه Adding roles to the app

  • افزودن نقش ها به توکن JWT Adding the roles to the JWT token

  • افزودن مجوز مبتنی بر خط مشی Adding policy based authorisation

  • جذب نقش های کاربران Getting the users with roles

  • ویرایش نقش های کاربر Editing user roles

  • اضافه کردن یک جزء مدیریت Adding an admin component

  • اضافه کردن یک محافظ مدیریت Adding an admin guard

  • افزودن یک دستورالعمل سفارشی Adding a custom directive

  • افزودن مؤلفه نقش های ویرایش Adding the edit roles component

  • راه اندازی مدال Setting up modals

  • ویرایش نقش ها در مشتری Editing roles in the client

  • تدوین نقش ها قسمت دوم Editing roles part two

  • خلاصه بخش 16 Section 16 summary

SignalR SignalR

  • معرفی Introduction

  • اضافه کردن یک مرکز حضور Adding a presence hub

  • احراز هویت به SignalR Authenticating to SignalR

  • سمت مشتری SignalR Client side SignalR

  • افزودن ردیاب حضور Adding a presence tracker

  • نمایش حضور آنلاین Displaying online presence

  • ایجاد یک مرکز پیام Creating a message hub

  • افزودن روش ارسال پیام به هاب Adding the send message method to the hub

  • افزودن اتصال هاب به سرویس پیام Adding the hub connection to the message service

  • بازسازی اجزای پیام برای استفاده از هاب Refactoring the message components to use the hub

  • ارسال پیام از طریق هاب Sending messages via the hub

  • ردیابی گروه های پیام Tracking the message groups

  • به روز رسانی مرکز پیام با ردیابی گروهی Updating the message hub with group tracking

  • برخورد با فرمت های تاریخ UTC Dealing with UTC date formats

  • اطلاع رسانی به کاربران هنگام دریافت پیام Notifying users when they receive a message

  • بهینه سازی حضور Optimizing the presence

  • بهینه سازی پیام ها Optimizing the messages

  • خلاصه بخش 17 Section 17 summary

SignalR SignalR

  • معرفی Introduction

  • اضافه کردن یک مرکز حضور Adding a presence hub

  • احراز هویت به SignalR Authenticating to SignalR

  • سمت مشتری SignalR Client side SignalR

  • افزودن ردیاب حضور Adding a presence tracker

  • نمایش حضور آنلاین Displaying online presence

  • ایجاد یک مرکز پیام Creating a message hub

  • افزودن روش ارسال پیام به هاب Adding the send message method to the hub

  • افزودن اتصال هاب به سرویس پیام Adding the hub connection to the message service

  • بازسازی اجزای پیام برای استفاده از هاب Refactoring the message components to use the hub

  • ارسال پیام از طریق هاب Sending messages via the hub

  • ردیابی گروه های پیام Tracking the message groups

  • به روز رسانی مرکز پیام با ردیابی گروهی Updating the message hub with group tracking

  • برخورد با فرمت های تاریخ UTC Dealing with UTC date formats

  • اطلاع رسانی به کاربران هنگام دریافت پیام Notifying users when they receive a message

  • بهینه سازی حضور Optimizing the presence

  • بهینه سازی پیام ها Optimizing the messages

  • خلاصه بخش 17 Section 17 summary

واحد الگوی کار و کارهای تکمیلی Unit of work pattern and finishing touches

  • معرفی Introduction

  • اجرای واحد کار Implementing the unit of work

  • بازسازی کنترلرها برای استفاده از واحد کار Refactoring the controllers to use the unit of work

  • بهینه سازی پرس و جوها قسمت اول Optimizing queries part one

  • بهینه سازی پرس و جوها قسمت دوم Optimizing queries part two

  • افزودن یک سرویس تأیید به برنامه زاویه ای Adding a confirmation service to the angular app

  • دریافت داده ها از مدال تایید Getting the data from the confirmation modal

  • مرتب کردن جزء پیام اعضا Tidying up the member message component

  • خلاصه بخش 18 Section 18 summary

  • چالش مدیریت عکس Photo management challenge

واحد الگوی کار و کارهای تکمیلی Unit of work pattern and finishing touches

  • معرفی Introduction

  • اجرای واحد کار Implementing the unit of work

  • بازسازی کنترلرها برای استفاده از واحد کار Refactoring the controllers to use the unit of work

  • بهینه سازی پرس و جوها قسمت اول Optimizing queries part one

  • بهینه سازی پرس و جوها قسمت دوم Optimizing queries part two

  • افزودن یک سرویس تأیید به برنامه زاویه ای Adding a confirmation service to the angular app

  • دریافت داده ها از مدال تایید Getting the data from the confirmation modal

  • مرتب کردن جزء پیام اعضا Tidying up the member message component

  • خلاصه بخش 18 Section 18 summary

  • چالش مدیریت عکس Photo management challenge

انتشار Publishing

  • معرفی Introduction

  • آماده سازی برنامه زاویه ای و ارائه آن از سرور API Preparing the angular app and serving this from the API server

  • اضافه کردن یک کنترلر بازگشتی Adding a fallback controller

  • ایجاد یک ساختار تولیدی زاویه ای Creating an angular production build

  • تغییر سرور DB به PostGres Switching the DB Server to PostGres

  • تغییر سرور DB در برنامه ما Changing the DB Server in our app

  • داکر کردن برنامه ما Dockerizing our app

  • در حال به روز رسانی پیکربندی برای استفاده از Postgres Updating the config to use Postgres

  • ایجاد یک استقرار برای fly io Creating a deployment to fly io

  • ایجاد متغیرهای پیکربندی برای fly io Creating the config variables for fly io

  • استفاده از اکشن های github Using github actions

  • رفع مشکلات رشته پیام Fixing the issues with the message thread

  • خودکارسازی استقرار Automating the deployment

  • Heroku دیگر خدمات رایگان ارائه نمی دهد Heroku no longer providing a free service

  • راه اندازی Heroku Setting up Heroku

  • استقرار برنامه در Heroku Deploying the app to Heroku

  • استفاده از شاخه ها در git و اتصال Heroku به GitHub Using branches in git and connecting Heroku to GitHub

  • ادغام تغییرات و استقرار مجدد Merging changes and redeploying

  • خلاصه پایان دوره End of course summary

انتشار Publishing

  • معرفی Introduction

  • آماده سازی برنامه زاویه ای و ارائه آن از سرور API Preparing the angular app and serving this from the API server

  • اضافه کردن یک کنترلر بازگشتی Adding a fallback controller

  • ایجاد یک ساختار تولیدی زاویه ای Creating an angular production build

  • تغییر سرور DB به PostGres Switching the DB Server to PostGres

  • تغییر سرور DB در برنامه ما Changing the DB Server in our app

  • داکر کردن برنامه ما Dockerizing our app

  • در حال به روز رسانی پیکربندی برای استفاده از Postgres Updating the config to use Postgres

  • ایجاد یک استقرار برای fly io Creating a deployment to fly io

  • ایجاد متغیرهای پیکربندی برای fly io Creating the config variables for fly io

  • استفاده از اکشن های github Using github actions

  • رفع مشکلات رشته پیام Fixing the issues with the message thread

  • خودکارسازی استقرار Automating the deployment

  • Heroku دیگر خدمات رایگان ارائه نمی دهد Heroku no longer providing a free service

  • راه اندازی Heroku Setting up Heroku

  • استقرار برنامه در Heroku Deploying the app to Heroku

  • استفاده از شاخه ها در git و اتصال Heroku به GitHub Using branches in git and connecting Heroku to GitHub

  • ادغام تغییرات و استقرار مجدد Merging changes and redeploying

  • خلاصه پایان دوره End of course summary

به روز رسانی به .Net 6، Angular 12 و Bootstrap 5 Updating to .Net 6, Angular 12 and Bootstrap 5

  • اگر به .Net 7 و Angular 14 به روز می کنید، لطفاً بخش بعدی را ببینید Please see next section if you are updating to .Net 7 and Angular 14

  • نحوه آپدیت Net 5 به .Net 6 How to update .Net 5 to .Net 6

  • Net 6 ویژگی های جدید و نحوه به روز رسانی پروژه برای استفاده از آنها .Net 6 new features and how to update the project to use them

  • به روز رسانی Angular به نسخه 12 Updating Angular to v12

  • چگونه بوت استرپ را به نسخه 5 آپدیت کنیم How to update Bootstrap to v5

به روز رسانی به .Net 6، Angular 12 و Bootstrap 5 Updating to .Net 6, Angular 12 and Bootstrap 5

  • اگر به .Net 7 و Angular 14 به روز می کنید، لطفاً بخش بعدی را ببینید Please see next section if you are updating to .Net 7 and Angular 14

  • نحوه آپدیت Net 5 به .Net 6 How to update .Net 5 to .Net 6

  • Net 6 ویژگی های جدید و نحوه به روز رسانی پروژه برای استفاده از آنها .Net 6 new features and how to update the project to use them

  • به روز رسانی Angular به نسخه 12 Updating Angular to v12

  • چگونه بوت استرپ را به نسخه 5 آپدیت کنیم How to update Bootstrap to v5

به روز رسانی به .Net 7، Angular 14 و Bootstrap 5 Updating to .Net 7, Angular 14 and Bootstrap 5

  • نحوه به روز رسانی به Net 7 How to update to .Net 7

  • نحوه آپدیت به Angular 14 How to update to Angular 14

  • نحوه به روز رسانی به بوت استرپ 5 How to update to Bootstrap 5

  • فعال کردن حالت سخت زاویه ای Enabling Angular strict mode

به روز رسانی به .Net 7، Angular 14 و Bootstrap 5 Updating to .Net 7, Angular 14 and Bootstrap 5

  • نحوه به روز رسانی به Net 7 How to update to .Net 7

  • نحوه آپدیت به Angular 14 How to update to Angular 14

  • نحوه به روز رسانی به بوت استرپ 5 How to update to Bootstrap 5

  • فعال کردن حالت سخت زاویه ای Enabling Angular strict mode

پاداش - محتوای قدیمی Bonus - Legacy Content

  • محل دسترسی به محتوای قدیمی (نسخه قبلی دوره) Where to access the legacy content (previous version of the course)

پاداش - محتوای قدیمی Bonus - Legacy Content

  • محل دسترسی به محتوای قدیمی (نسخه قبلی دوره) Where to access the legacy content (previous version of the course)

نمایش نظرات

Udemy (یودمی)

یودمی یکی از بزرگ‌ترین پلتفرم‌های آموزشی آنلاین است که به میلیون‌ها کاربر در سراسر جهان امکان دسترسی به دوره‌های متنوع و کاربردی را فراهم می‌کند. این پلتفرم امکان آموزش در زمینه‌های مختلف از فناوری اطلاعات و برنامه‌نویسی گرفته تا زبان‌های خارجی، مدیریت، و هنر را به کاربران ارائه می‌دهد. با استفاده از یودمی، کاربران می‌توانند به صورت انعطاف‌پذیر و بهینه، مهارت‌های جدیدی را یاد بگیرند و خود را برای بازار کار آماده کنند.

یکی از ویژگی‌های برجسته یودمی، کیفیت بالای دوره‌ها و حضور استادان مجرب و با تجربه در هر حوزه است. این امر به کاربران اعتماد می‌دهد که در حال دریافت آموزش از منابع قابل اعتماد و معتبر هستند و می‌توانند به بهترین شکل ممکن از آموزش‌ها بهره ببرند. به طور خلاصه، یودمی به عنوان یکی از معتبرترین و موثرترین پلتفرم‌های آموزشی آنلاین، به افراد امکان می‌دهد تا به راحتی و با کیفیت، مهارت‌های مورد نیاز خود را ارتقا دهند و به دنبال رشد و پیشرفت شغلی خود باشند.

آموزش یک برنامه با ASPNET Core و Angular از ابتدا بسازید
جزییات دوره
35 hours
275
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
91,577
4.6 از 5
دارد
دارد
دارد
Neil Cummings
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Neil Cummings Neil Cummings

توسعه دهنده نرم افزار آزاد حرفه ای