eitaa logo
پروژه ASP.Net Core MVC (وب و سی شارپ)
120 دنبال‌کننده
168 عکس
38 ویدیو
376 فایل
❁﷽❁ آموزش 📖 برنامه نویسی ASP.Net Core MVC (وب و سی شارپ) Admin: @alialirezapanahi برنامه نویسی برنامه نویسی سی شارپ eitaa.com/sisharpapp برنامه نویسی وب eitaa.com/aspdatnet ویراستی virasty.com/alialirezapanahi آپارات aparat.com/alialirezapanahi
مشاهده در ایتا
دانلود
امنیت و احراز هویت در ASP_Net Core MVC .mp3
زمان: حجم: 1.2M
امنیت و احراز هویت ساده در ASP.Net Core MVC ساخته شده از هوش مصنوعی
عملیات CRUD در ASP_NET Core MVC.mp3
زمان: حجم: 2.2M
🎙️ پادکست: عملیات CRUD در ASP.NET Core MVC ساخته شده از هوش مصنوعی
پروژه ASP.Net Core MVC (وب و سی شارپ)
🎙️ پادکست: عملیات CRUD در ASP.NET Core MVC ساخته شده از هوش مصنوعی
🎙️ پادکست: عملیات CRUD در ASP.NET Core MVC سلام! خوش اومدی به قسمت امروز پادکست ما، جایی که می‌خوایم درباره‌ی یکی از پایه‌ای‌ترین مفاهیم برنامه‌نویسی وب صحبت کنیم: عملیات CRUD در ASP.NET Core MVC. --- 🎧 بخش اول: CRUD یعنی چی؟ کلمه‌ی CRUD مخفف چهار عملیات اصلی روی داده‌هاست: - Create – ایجاد داده جدید - Read – خواندن یا نمایش داده‌ها - Update – ویرایش داده‌های موجود - Delete – حذف داده‌ها این عملیات‌ها پایه‌ی هر اپلیکیشن دیتابیس‌محور هستن؛ از بلاگ گرفته تا فروشگاه آنلاین. --- 🧩 بخش دوم: چطور در ASP.NET Core MVC پیاده‌سازی می‌شه؟ در ASP.NET Core MVC، این عملیات معمولاً در کنترلرها انجام می‌شن. بیایید با یه مثال ساده از مدل Post برای بلاگ جلو بریم. 1. Create - فرم HTML برای ورود اطلاعات - اکشن [HttpPost] در کنترلر برای ذخیره‌ی داده با dbContext.Posts.Add(post) و SaveChanges() 2. Read - اکشن [HttpGet] برای نمایش لیست پست‌ها با dbContext.Posts.ToList() - یا نمایش جزئیات یک پست خاص با Find(id) 3. Update - فرم ویرایش با داده‌های قبلی - اکشن [HttpPost] برای بروزرسانی با dbContext.Posts.Update(post) و SaveChanges() 4. Delete - تأیید حذف - اکشن [HttpPost] یا [HttpDelete] برای حذف با dbContext.Posts.Remove(post) و SaveChanges() --- 🛠️ بخش سوم: نکات مهم - استفاده از Model Binding برای دریافت داده‌ها از فرم - اعتبارسنجی با ModelState.IsValid - استفاده از Entity Framework Core برای ارتباط با دیتابیس - امنیت با [ValidateAntiForgeryToken] --- 🎯 جمع‌بندی CRUD قلب هر اپلیکیشن وبه. وقتی این چهار عملیات رو خوب یاد بگیری، می‌تونی تقریباً هر نوع پروژه‌ای رو بسازی—از مدیریت کاربران گرفته تا سیستم رزرو یا فروشگاه آنلاین.
Razor و Layout در ASP_Net Core MVC.mp3
زمان: حجم: 1.2M
Razor و Layout در ASP.Net Core MVC ساخته شده از هوش مصنوعی
ارتباط جداول در ASP_NET Core MVC و EF Core.mp3
زمان: حجم: 2M
🎙️ پادکست: ارتباط بین جدول‌ها در ASP.NET Core MVC با Entity Framework Core ساخت شده از هوش مصنوعی
پروژه ASP.Net Core MVC (وب و سی شارپ)
🎙️ پادکست: ارتباط بین جدول‌ها در ASP.NET Core MVC با Entity Framework Core ساخت شده از هوش مصنوعی
🎙️ پادکست: ارتباط بین جدول‌ها در ASP.NET Core MVC با Entity Framework Core سلام! خوش اومدی به قسمت امروز پادکست ما، جایی که می‌خوایم درباره‌ی یکی از مهم‌ترین مفاهیم در طراحی دیتابیس و برنامه‌نویسی وب صحبت کنیم: ارتباط بین جدول‌ها یا Entity Relationships در ASP.NET Core MVC. --- 🧠 ارتباط جدول یعنی چی؟ در دنیای دیتابیس، جدول‌ها معمولاً به هم مرتبط هستن. مثلاً: - هر نویسنده می‌تونه چند مقاله بنویسه. - هر دانش‌آموز یک آدرس داره. - هر پست وبلاگ می‌تونه در چند دسته‌بندی قرار بگیره. برای پیاده‌سازی این روابط در ASP.NET Core MVC، از Entity Framework Core استفاده می‌کنیم که به ما اجازه می‌ده این ارتباط‌ها رو به‌صورت کد تعریف کنیم. --- 🔗 انواع ارتباط بین جدول‌ها 1. یک به یک (One-to-One): - مثال: هر دانش‌آموز یک آدرس دارد. - در EF Core: کلید اصلی جدول اول به‌عنوان کلید خارجی در جدول دوم استفاده می‌شه. 2. یک به چند (One-to-Many): - مثال: یک نویسنده چند مقاله دارد. - در EF Core: جدول مقاله دارای کلید خارجی از جدول نویسنده است. 3. چند به چند (Many-to-Many): - مثال: هر پست وبلاگ می‌تونه در چند دسته‌بندی باشه و هر دسته‌بندی شامل چند پست باشه. - در EF Core: از جدول واسط استفاده می‌شه که شامل کلیدهای خارجی از هر دو جدول است. --- 🛠️ چطور در کد پیاده‌سازی کنیم؟ فرض کن دو مدل داریم: Author و BlogPost
csharp
public class Author {
    public int Id { get; set; }
    public string Name { get; set; }
    public ICollection<BlogPost> BlogPosts { get; set; }
}

public class BlogPost {
    public int Id { get; set; }
    public string Title { get; set; }
    public int AuthorId { get; set; }
    public Author Author { get; set; }
}
در این مثال، ارتباط یک به چند بین نویسنده و پست‌ها ایجاد شده. --- 🎯 نکات مهم در EF Core: - استفاده از virtual برای Lazy Loading - استفاده از [ForeignKey] برای تعیین کلید خارجی - تعریف DbSet در کلاس DbContext - استفاده از Migration برای ساخت دیتابیس --- 🎧 جمع‌بندی ارتباط بین جدول‌ها پایه‌ی ساختار هر اپلیکیشن دیتابیس‌محوره. با درک درست این روابط، می‌تونی پروژه‌هایی مثل بلاگ، فروشگاه، یا سیستم مدیریت کاربران رو حرفه‌ای بسازی.
متدهای Get و Post در فرم_ها.mp3
زمان: حجم: 1.4M
متدهای Get و Post در فرم ساخته شده از هوش مصنوعی
پروژه ASP.Net Core MVC (وب و سی شارپ)
متدهای Get و Post در فرم ساخته شده از هوش مصنوعی
مثال فرم افزودن <form asp-action="Create" method="post"> <label asp-for="Name"></label> <input asp-for="Name" class="form-control" /> <label asp-for="Price"></label> <input asp-for="Price" class="form-control" /> <button type="submit" class="btn btn-primary">افزودن محصول</button> </form> مثال فرم جستجو <form asp-action="Search" method="get" class="form-inline mb-3"> <input type="text" name="keyword" class="form-control" placeholder="جستجوی محصول..." /> <button type="submit" class="btn btn-info">جستجو</button> </form> و در کنترلر public class ProductController : Controller { // نمایش فرم افزودن [HttpGet] public IActionResult Create() { return View(); } // دریافت فرم و افزودن محصول [HttpPost] public IActionResult Create(Product model) { if (!ModelState.IsValid) return View(model); _context.Products.Add(model); _context.SaveChanges(); return RedirectToAction("Index"); } public IActionResult Search(string keyword) { var results = _context.Products .Where(p => p.Name.Contains(keyword)) .ToList(); return View(results); } }
جستجو با متد GET در ASP_NET Core MVC.mp3
زمان: حجم: 1.6M
جستجو با متد گت در ASP.Net Core MVC ساخته شده از هوش مصنوعی بعد از ارسال، آدرس می‌شه: https://localhost:5001/Product/Search?keyword=ساعت
ProductTimerApp (2).zip
حجم: 24.9M
پروژه ProductTimerApp چند تغییر دادم اول اینکه به جای تگ a حذف از فرم استفاده کردم امنیت دارد از تگ فرم برای حذف . جستجو اضافه شد از متد گت که با آدرس url فیلتر میشود در مدل product قیمت Price علامت سوال گذاشتم که attribute قیمت [Required(ErrorMessage = "قیمت محصول الزامی است")] کار کند
معماری سرویس و ریپازیتوری در ASP_NET Core MVC.mp3
زمان: حجم: 1.4M
معماری سرویس و ریپوزیتوری در ASP.Net Core MVC ساخته شده از هوش مصنوعی
پروژه ASP.Net Core MVC (وب و سی شارپ)
معماری سرویس و ریپوزیتوری در ASP.Net Core MVC ساخته شده از هوش مصنوعی
در چند بخش درباره‌ی مفاهیم سرویس، ریپوزیتوری، کلاس، اینترفیس و ارتباط بین لایه‌ها— در ASP.Net Core MVC --- 🎧 بخش اول: ریپوزیتوری یعنی چی؟ > تصور کن ریپوزیتوری مثل یه کتابدار حرفه‌ایه که فقط مسئول جستجو، ذخیره، و حذف کتاب‌ها از قفسه‌ست. > ریپوزیتوری در معماری نرم‌افزار مسئول ارتباط با دیتابیسه. > یعنی اطلاعات رو از منبع داده می‌گیره یا توش می‌ذاره، بدون اینکه منطق تجاری یا تصمیم‌گیری انجام بده. 📌 نقش ریپوزیتوری: - دریافت داده از دیتابیس - ذخیره‌ی داده در دیتابیس - مخفی‌سازی جزئیات دیتابیس برای بقیه بخش‌ها 📦 مثلاً اگر بخوای لیست محصولات رو بگیری، کنترلر مستقیم به دیتابیس وصل نمی‌شه—بلکه به ریپوزیتوری می‌گه که «برو لیست محصول‌ها رو بیار». --- 🎧 بخش دوم: سرویس یعنی چی؟ > حالا سرویس نقش مشاور یا تحلیل‌گر رو داره. > اون با داده‌هایی که ریپوزیتوری داده، تصمیم می‌گیره چطور رفتار کنه. > مثلاً بررسی می‌کنه که آیا محصول معتبره؟ قیمتش منطقیه؟ قوانین تجاری رعایت شده یا نه؟ 📌 وظیفه‌ی سرویس: - اعمال منطق تجاری - اعتبارسنجی داده‌ها - تصمیم‌گیری درباره‌ی عملیات قبل از ذخیره 🧠 سرویس‌ها معمولاً خودشون با ریپوزیتوری در ارتباطن، و کنترلر فقط با سرویس حرف می‌زنه—not دیتابیس. --- 🎧 بخش سوم: کلاس‌ها و اینترفیس‌ها > کلاس‌ها مثل قالب‌هایی هستن که رفتار واقعی سیستم رو پیاده‌سازی می‌کنن > اینترفیس‌ها مثل قراردادهایی هستن که فقط تعریف می‌کنن «چه کاری» انجام بشه—not چطوری 📌 کاربرد اینترفیس: - تعریف عملکرد بدون اجرای آن - جدا کردن وابستگی‌ها - امکان تست راحت‌تر و تغییر پیاده‌سازی 📌 کاربرد کلاس: - پیاده‌سازی واقعی عملکرد تعریف‌شده در اینترفیس - اتصال رفتارها و ویژگی‌ها به داده‌ها 🎯 ترکیب کلاس و اینترفیس باعث می‌شه بتونی نرم‌افزار منعطف و قابل تست بسازی. --- 🎧 بخش چهارم: ارتباط بین لایه‌ها > حالا وقتشه ببینیم همه‌ی این قطعات چطور کنار هم کار می‌کنن. 🔁 مسیر داده و منطق از بالا به پایین:
کنترلر → سرویس → ریپوزیتوری → دیتابیس
| لایه | وظیفه | |------|--------| | کنترلر | دریافت درخواست از کاربر (مثلاً ثبت فرم یا کلیک روی دکمه) | | سرویس | تصمیم‌گیری و بررسی داده‌ها، مثل اعتبارسنجی یا محاسبات | | ریپوزیتوری | ارتباط مستقیم با دیتابیس؛ گرفتن یا ذخیره‌کردن داده | | دیتابیس | منبع نهایی داده‌ها؛ جایی که اطلاعات نگهداری می‌شن 🔹 این جداسازی باعث می‌شه پروژه‌ت قابل نگهداری‌تر، تست‌پذیرتر، و قابل تغییر باشه—مثلاً بتونی به راحتی نوع دیتابیس رو عوض کنی بدون تغییر در سرویس یا کنترلر. --- 🎧 بخش پنجم: چرا این معماری حرفه‌ایه؟ > چون بجای اینکه همه‌چیز توی کنترلر نوشته بشه، مسئولیت‌ها تقسیم می‌شن—مثل تیمی که هرکسی یه نقش خاص داره. ✨ مزایا: - ساختار مرتب و قابل فهم - امکان گسترش راحت بدون درهم‌ریختگی - قابلیت تست مستقل هر بخش