eitaa logo
پروژه ASP.Net Core MVC (وب و سی شارپ)
119 دنبال‌کننده
168 عکس
38 ویدیو
376 فایل
❁﷽❁ آموزش 📖 برنامه نویسی ASP.Net Core MVC (وب و سی شارپ) Admin: @alialirezapanahi برنامه نویسی برنامه نویسی سی شارپ eitaa.com/sisharpapp برنامه نویسی وب eitaa.com/aspdatnet ویراستی virasty.com/alialirezapanahi آپارات aparat.com/alialirezapanahi
مشاهده در ایتا
دانلود
فهرست سی شارپ پیشرفته 01- برنامه کنسول سی‌شارپ در دیتابیس SQL Server 02- بررسی برنامه کنسول سی‌شارپ در دیتابیس SQL Server 03- رشته اتصال (Connection String) 04- ذخیره، نمایش، بروزرسانی و حذف در یک دیتابیس از سی‌شارپ 05- دریافت نام و فامیل نمایش، بروزرسانی و حذف در یک دیتابیس از سی‌شارپ 06- یک متد در کلاس SqlCommand 07- ویندوز فرم‌ها (Windows Forms) 08- تفاوت دات نت فرمورک و دانت در ویندوز فرم 09- خصوصیات (Properties) ویندوز فرم 10- جعبه ابزار (Toolbox) ویندوز فرم 11- ساخت یک ماشین حساب ساده 12- اتصال به SQL Server با استفاده از نقطه (.) 13- دو روش آدرس‌دهی 14- دفترچه تلفن من 15- ساخت یک پنجره لاگین 16- با استفاده از سی شارپ یک دیتابیس 17- با استفاده از سی شارپ یک جداول دیتابیس 18- لینک LINQ 19- دستورات SQL و دستورات LINQ 20- نحوه نوشتاری LINQ 21- لامبدا (Lambda Expressions) 22- نحوه نوشتاری LINQ و Lambda 23- سه روش مختلف برای افزودن اشیاء به لیست 24- یک مثال عملی 25- Entity Framework (EF) 26- نحوه استفاده از Entity Framework 27- یک مثال کامل از یک برنامه کنسول سی شارپ با استفاده از Entity Framework Core 28- یک مثال کامل دیگر از یک برنامه کنسول سی شارپ با استفاده از Entity Framework Core 29- نصب Entity Framework 30- یک مثال کامل اضافه کردن (Insert) و انتخاب (Select) و بروز رسانی (Update) و حذف (Delete) و ذخیره (Save) 31- من دفترچه تلفن را به Entity تغییر دادم و توضیح دادن کد 32- الگوهای طراحی یا Design Patterns 33- تست واحد یا Unit Testing 34- ویژگی‌های پیشرفته سی‌شارپ 35- آموزش ساخت حسابداری شخصی در کانال سی شارپ 36- اکستنشن متد (Extension Method) 37- یک مثال دیگر از اکستنشن متد 38- متد ToString() 39- کلمه کلیدی virtual 40- کلمه کلیدی abstract 41- کلمه کلیدی sealed
ASP.NET یک فریم‌ورک محبوب و منبع‌باز برای توسعه اپلیکیشن‌های وب است که توسط شرکت مایکروسافت توسعه داده شده است. این فریم‌ورک به برنامه‌نویسان اجازه می‌دهد تا وب‌سایت‌ها و برنامه‌های آنلاین پویا و قدرتمندی را با استفاده از زبان‌های برنامه‌نویسی مانند C#، VB.NET و F# ایجاد کنند. ASP.NET به دلیل ویژگی‌های متنوع و کاربردی خود، از جمله سیستم احراز هویت، مدیریت وضعیت، و پشتیبانی از پروتکل HTTP، بسیار مورد توجه توسعه‌دهندگان قرار گرفته است. این فریم‌ورک همچنین امکان ایجاد وب‌سایت‌های چندپلتفرمی را فراهم می‌کند و می‌تواند بر روی سیستم‌عامل‌های مختلفی مانند ویندوز، لینوکس و macOS اجرا شود.
برای نصب ASP.NET در ویژوال استودیو، می‌توانید مراحل زیر را دنبال کنید: - دانلود و نصب ویژوال استودیو: - ابتدا به سایت ویژوال استودیو بروید و نسخه Community را دانلود کنید که رایگان است. - فایل نصب را اجرا کنید و مراحل نصب را دنبال کنید. در طول نصب، مطمئن شوید که به اینترنت متصل هستید تا بتوانید بسته‌های مورد نیاز را دانلود کنید. - انتخاب Workloads: - پس از اجرای فایل نصب، پنجره‌ای باز می‌شود که از شما می‌خواهد Workloads مورد نظر خود را انتخاب کنید. - گزینه ASP.NET and web development را انتخاب کنید و سپس روی Install کلیک کنید. - ایجاد پروژه جدید ASP.NET: - پس از نصب ویژوال استودیو، آن را باز کنید. - از منوی File گزینه New و سپس Project را انتخاب کنید. - در پنجره باز شده، ASP.NET Core Web Application را انتخاب کنید و نام و مسیر پروژه را تعیین کنید. - در مرحله بعد، نوع پروژه ASP.NET مورد نظر خود را انتخاب کنید (مثلاً Web Application (Model-View-Controller)) و روی Create کلیک کنید. - نصب و تنظیمات اضافی: - اگر نیاز به نصب نسخه‌های خاصی از .NET Core دارید، می‌توانید از سایت مایکروسافت نسخه‌های مورد نیاز را دانلود و نصب کنید. این مراحل به شما کمک می‌کند تا به راحتی ASP.NET را در ویژوال استودیو نصب و پروژه‌های خود را شروع کنید.
در اینجا توضیح مختصری از هر یک از این تکنولوژی‌ها و الگوهای پروژه در ASP.NET Core آورده شده است: - Blazor Web App: بلزر یک فریم‌ورک برای ساخت رابط‌های کاربری تعاملی سمت کلاینت با استفاده از C# است. بلزر می‌تواند به دو صورت سرور و وب‌اسمبلی اجرا شود. - ASP.NET Core Web App (Razor Pages): این الگو برای ساخت صفحات وب با استفاده از Razor Pages است که یک مدل برنامه‌نویسی ساده و مبتنی بر صفحه برای ساخت رابط‌های کاربری وب است. - ASP.NET Core Web API: این الگو برای ساخت APIهای وب است که می‌توانند توسط کلاینت‌های مختلف مانند مرورگرها و اپلیکیشن‌های موبایل مصرف شوند. - ASP.NET Core Web API (native AOT): این الگو مشابه Web API است، اما با استفاده از تکنولوژی Native AOT (Ahead-of-Time) که باعث بهبود عملکرد و کاهش زمان اجرا می‌شود. - Razor Class Library: این الگو برای ساخت کتابخانه‌های کلاس Razor است که می‌توانند در پروژه‌های مختلف ASP.NET Core استفاده شوند. - ASP.NET Core Empty: این الگو یک پروژه خالی ASP.NET Core ایجاد می‌کند که می‌توانید از ابتدا آن را سفارشی کنید. - ASP.NET Core Web App (Model-View-Controller): این الگو برای ساخت برنامه‌های وب با استفاده از الگوی MVC (مدل-نما-کنترلر) است که یک الگوی طراحی برای جداسازی منطق برنامه از رابط کاربری است. - Blazor WebAssembly Standalone App: این الگو برای ساخت اپلیکیشن‌های Blazor است که به صورت مستقل و بدون نیاز به سرور اجرا می‌شوند.
برای شروع اولین پروژه در ASP.NET Core، پیشنهاد می‌کنم از ASP.NET Core Web App (Model-View-Controller) استفاده کنید. این الگو به شما کمک می‌کند تا با اصول اولیه MVC آشنا شوید و یک برنامه وب ساده و کاربردی بسازید. ایجاد پروژه ASP.NET Core Web App (Model-View-Controller) 1- نصب ابزارها: - Visual Studio: اگر Visual Studio را نصب نکرده‌اید، می‌توانید در سایت مایکروسافت دانلود و نصب کنید. 2- ایجاد پروژه: - و Visual Studio را باز کنید. - از منوی File گزینه New و سپس Project را انتخاب کنید. - در پنجره Create a new project، الگوی ASP.NET Core Web App (Model-View-Controller) را انتخاب کنید و روی Next کلیک کنید. - در پنجره Configure your new project، نام پروژه را وارد کنید (مثلاً MyFirstMvcApp) و روی Create کلیک کنید. - در پنجره Additional information، نسخه .NET را انتخاب کنید (مثلاً .NET 8.0) و روی Create کلیک کنید. 3- ساختار پروژه: - پروژه‌ای که ایجاد می‌شود شامل پوشه‌ها و فایل‌های زیر است: - Controllers: شامل کنترلرها که منطق برنامه را مدیریت می‌کنند. - Models: شامل مدل‌ها که داده‌ها و منطق تجاری را تعریف می‌کنند. - Views: شامل نماها که رابط کاربری را نمایش می‌دهند. 4- اجرای پروژه: - برای اجرای پروژه، کلیدهای Ctrl + F5 را فشار دهید یا از منوی Debug گزینه Start Without Debugging را انتخاب کنید. - مرورگر شما باز می‌شود و برنامه وب شما در آدرس http://localhost:5000 نمایش داده می‌شود. این مراحل به شما کمک می‌کند تا اولین پروژه ASP.NET Core خود را ایجاد و اجرا کنید.
برای ایجاد یک پروژه ASP.NET Core Web App (Model-View-Controller) ، مراحل زیر را دنبال کنید: 1- ایجاد پروژه: - در Visual Studio، به مسیر File > New > Project بروید. - نوع پروژه را ASP.NET Core Web App (Model-View-Controller) انتخاب کنید و روی Next کلیک کنید. 2- پیکربندی پروژه: - نام پروژه و مکان ذخیره‌سازی آن را مشخص کنید. - در بخش Framework، نسخه .NET مورد نظر خود را انتخاب کنید (مثلاً .NET 8.0). - در بخش Authentication type، نوع احراز هویت مورد نظر خود را انتخاب کنید (مثلاً Individual Accounts برای احراز هویت با استفاده از حساب‌های کاربری فردی). 3- پیکربندی HTTPS: - گزینه Configure for HTTPS را فعال کنید تا پروژه شما از HTTPS استفاده کند. 4- پشتیبانی از کانتینرها: - گزینه Enable Docker Support را فعال کنید. - در بخش Container OS، سیستم‌عامل کانتینر مورد نظر خود را انتخاب کنید (مثلاً Linux یا Windows). - در بخش Container build type، نوع ساخت کانتینر را مشخص کنید (مثلاً Docker). 5- استفاده نکردن از Top-Level Statements: - گزینه Do not use top-level statements را فعال کنید تا از استفاده از Top-Level Statements در کد خود جلوگیری کنید. 6- Enlist in .NET Aspire orchestration: - این گزینه برای استفاده از قابلیت‌های orchestration در .NET Aspire است که به شما امکان مدیریت و هماهنگی بهتر پروژه‌های بزرگ را می‌دهد. پس از انجام این مراحل، روی Create کلیک کنید تا پروژه شما ایجاد شود. حالا می‌توانید کدهای خود را اضافه کنید و پروژه را توسعه دهید.
در اینجا توضیح مختصری از هر پوشه و فایل در Solution Explorer پروژه ASP.NET Core Web App (Model-View-Controller) آورده شده است: 1- Connected Services: - این پوشه شامل سرویس‌های خارجی است که به پروژه شما متصل شده‌اند، مانند سرویس‌های ابری یا APIهای خارجی. 2- Dependencies: - این پوشه شامل تمامی وابستگی‌های پروژه شما است، از جمله کتابخانه‌های NuGet و بسته‌های مورد نیاز. 3- Properties: - این پوشه شامل فایل‌های پیکربندی پروژه مانند launchSettings.json است که تنظیمات مربوط به اجرای پروژه را نگهداری می‌کند. 4- wwwroot: - این پوشه شامل فایل‌های استاتیک پروژه شما است، مانند CSS، JavaScript، تصاویر و سایر منابع استاتیک. 5- Controllers: - این پوشه شامل کنترلرهای پروژه شما است که مسئول مدیریت درخواست‌ها و پاسخ‌ها هستند. کنترلرها منطق برنامه را پیاده‌سازی می‌کنند. 6- Models: - این پوشه شامل مدل‌های داده‌ای پروژه شما است که ساختار داده‌ها و منطق تجاری را تعریف می‌کنند. 7- Views: - این پوشه شامل نماهای پروژه شما است که رابط کاربری را نمایش می‌دهند. نماها معمولاً فایل‌های Razor هستند که HTML و C# را ترکیب می‌کنند. 8- appsettings.json: - این فایل شامل تنظیمات پیکربندی پروژه شما است، مانند تنظیمات پایگاه داده، تنظیمات لاگینگ و سایر تنظیمات کاربردی. 9- Program.cs: - این فایل نقطه ورود برنامه شما است و شامل کدهای راه‌اندازی و پیکربندی اولیه برنامه است.
در دات نت 8، فایل Program.cs به عنوان نقطه ورودی اصلی برنامه عمل می‌کند و شامل تمام پیکربندی‌ها و تنظیمات مورد نیاز برای اجرای برنامه است. در اینجا یک نمونه کامل از فایل Program.cs و توضیح هر بخش آورده شده است: نمونه فایل Program.cs using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Microsoft.Extensions.FileProviders; using System.IO; var builder = WebApplication.CreateBuilder(args); // اضافه کردن سرویس‌ها به کانتینر builder.Services.AddControllersWithViews(); var app = builder.Build(); // پیکربندی خط لوله درخواست HTTP if (!app.Environment.IsDevelopment()) { app.UseExceptionHandler("/Home/Error"); app.UseHsts(); } app.UseHttpsRedirection(); app.UseStaticFiles(new StaticFileOptions { FileProvider = new PhysicalFileProvider( Path.Combine(builder.Environment.ContentRootPath, "public")), RequestPath = "/static" }); app.UseRouting(); app.UseAuthorization(); app.MapControllerRoute( name: "default", pattern: "{controller=Home}/{action=Index}/{id?}"); app.Run(); توضیح بخش‌های مختلف - اضافه کردن فضای نام‌ها: using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Microsoft.Extensions.FileProviders; using System.IO; این بخش شامل فضای نام‌های مورد نیاز برای پیکربندی و اجرای برنامه است. - ایجاد و پیکربندی WebApplication: var builder = WebApplication.CreateBuilder(args); این خط یک شیء WebApplicationBuilder ایجاد می‌کند که برای پیکربندی سرویس‌ها و تنظیمات برنامه استفاده می‌شود. - اضافه کردن سرویس‌ها به کانتینر: builder.Services.AddControllersWithViews(); این خط سرویس‌های مورد نیاز برای کنترلرها و ویوها را به کانتینر DI اضافه می‌کند. - ساختن و پیکربندی برنامه: var app = builder.Build(); این خط برنامه را می‌سازد و آماده اجرای آن می‌شود. - پیکربندی خط لوله درخواست HTTP: if (!app.Environment.IsDevelopment()) { app.UseExceptionHandler("/Home/Error"); app.UseHsts(); } app.UseHttpsRedirection(); app.UseStaticFiles(new StaticFileOptions { FileProvider = new PhysicalFileProvider( Path.Combine(builder.Environment.ContentRootPath, "public")), RequestPath = "/static" }); app.UseRouting(); app.UseAuthorization(); app.MapControllerRoute( name: "default", pattern: "{controller=Home}/{action=Index}/{id?}"); این بخش شامل تنظیمات مختلفی است که برای پیکربندی نحوه پردازش درخواست‌های HTTP استفاده می‌شود: - UseExceptionHandler: در حالت تولید، خطاها را به صفحه خطای مشخص شده هدایت می‌کند. - UseHsts: HSTS (HTTP Strict Transport Security) را فعال می‌کند. - UseHttpsRedirection: درخواست‌های HTTP را به HTTPS هدایت می‌کند. - UseStaticFiles: فایل‌های استاتیک را از پوشه مشخص شده ارائه می‌دهد. - UseRouting: مسیریابی درخواست‌ها را فعال می‌کند. - UseAuthorization: مجوزدهی را فعال می‌کند. - MapControllerRoute: مسیر پیش‌فرض برای کنترلرها و اکشن‌ها را تنظیم می‌کند. - اجرای برنامه: app.Run(); این خط برنامه را اجرا می‌کند و منتظر درخواست‌های ورودی می‌ماند.
تغییر پوشه wwwrootبرای تغییر پوشه wwwroot به یک پوشه دیگر مانند public، می‌توانید از کد زیر استفاده کنید: - اضافه کردن StaticFileOptions: - در بخش app.UseStaticFiles، تنظیمات مربوط به پوشه جدید را اضافه کنید. app.UseStaticFiles(new StaticFileOptions { FileProvider = new PhysicalFileProvider( Path.Combine(builder.Environment.ContentRootPath, "public")), RequestPath = "/static" }); - تنظیم مسیر جدید: - FileProvider مسیر جدید پوشه استاتیک را مشخص می‌کند. - RequestPath مسیر درخواست‌ها برای فایل‌های استاتیک را تنظیم می‌کند. با این تغییرات، فایل‌های استاتیک شما از پوشه public ارائه خواهند شد و می‌توانید به آنها از طریق مسیر /static دسترسی پیدا کنید.
فایل launchSettings.json در پروژه‌های ASP.NET Core برای پیکربندی نحوه اجرای برنامه در محیط توسعه استفاده می‌شود. این فایل در پوشه Properties قرار دارد و شامل تنظیمات مختلفی است که به شما امکان می‌دهد نحوه اجرای برنامه را مشخص کنید. این تنظیمات شامل پروفایل‌های مختلف برای اجرای برنامه با استفاده از سرورهای مختلف مانند Kestrel و IIS Express است. ساختار فایل launchSettings.json در اینجا یک نمونه از فایل launchSettings.json آورده شده است: { "profiles": { "IIS Express": { "commandName": "IISExpress", "launchBrowser": true, "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development" } }, "MyApp": { "commandName": "Project", "dotnetRunMessages": true, "launchBrowser": true, "applicationUrl": "https://localhost:5001;http://localhost:5000", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development" } } } } توضیح بخش‌های مختلف - Profiles: - این بخش شامل پروفایل‌های مختلفی است که نحوه اجرای برنامه را مشخص می‌کنند. هر پروفایل می‌تواند تنظیمات خاص خود را داشته باشد. - IIS Express: - commandName: مشخص می‌کند که برنامه با استفاده از IIS Express اجرا شود. - launchBrowser: تعیین می‌کند که آیا مرورگر به صورت خودکار باز شود یا خیر. - environmentVariables: متغیرهای محیطی را برای این پروفایل تنظیم می‌کند، مانند ASPNETCORE_ENVIRONMENT که محیط توسعه را مشخص می‌کند. - MyApp: - commandName: مشخص می‌کند که برنامه به عنوان یک پروژه اجرا شود (با استفاده از Kestrel). - dotnetRunMessages: پیام‌های اجرای dotnet را فعال می‌کند. - launchBrowser: تعیین می‌کند که آیا مرورگر به صورت خودکار باز شود یا خیر. - applicationUrl: و URLهای برنامه را مشخص می‌کند که شامل HTTP و HTTPS است. - environmentVariables: متغیرهای محیطی را برای این پروفایل تنظیم می‌کند. اجرای HTTP و HTTPS در پروفایل MyApp، تنظیمات applicationUrl مشخص می‌کند که برنامه باید به هر دو URL http://localhost:5000 و https://localhost:5001 گوش دهد. این به شما امکان می‌دهد برنامه را هم با HTTP و هم با HTTPS اجرا کنید. اجرای با IIS Express پروفایل IIS Express برای اجرای برنامه با استفاده از IIS Express استفاده می‌شود. IIS Express یک نسخه سبک از IIS است که برای توسعه محلی استفاده می‌شود. این پروفایل به شما امکان می‌دهد برنامه را در محیطی مشابه با محیط تولید اجرا کنید.