مدیریت تنظیمات در ASP.NET Core
در این بخش، تنظیمات مربوط به پروژه ASP.NET Core رو بررسی میکنیم.
در نسخههای قبلی ASP.NET، معمولاً فایلهای زیر برای تنظیمات وجود داشتن:
- global.asax = برای اجرای کدهای مربوط به شروع برنامه
- web.config = برای ذخیره تنظیمات و پیکربندی برنامه
اما در ASP.NET Core، این فایلها حذف شدن و همهی تنظیمات در Startup.cs انجام میشه.
در Solution Explorer، فایلی به نام Startup.cs وجود داره که شامل یک کلاس Startup هست.
این کلاس وظایف زیر رو انجام میده:
- پیکربندی کلی برنامه
- ثبت سرویسهای موردنیاز
- تنظیم منابع پیکربندی (مثلاً خواندن تنظیمات از فایل appsettings.json)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
namespace FirstAppDemo {
public class Startup {
// This method gets called by the runtime.
// Use this method to add services to the container.
// For more information on how to configure your application,
// visit http://go.microsoft.com/fwlink/?LinkID=398940
public void ConfigureServices(IServiceCollection services) {
}
// This method gets called by the runtime. Use this method to configure
// the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env,
ILoggerFactory loggerFactory) {
loggerFactory.AddConsole();
if (env.IsDevelopment()) {
app.UseDeveloperExceptionPage();
}
app.Run(async (context) => {
await context.Response.WriteAsync("Hello World!");
});
}
}
}
در کلاس Startup، دو روش وجود دارد که بیشتر کارهای ما در آنها انجام می شود. روش Configure این کلاس جایی است که شما خط لوله پردازش HTTP خود را می سازید.
این روش نحوه پاسخگویی برنامه را به درخواست ها را تعریف می کند. در حال حاضر، این برنامه فقط می تواند Hello World را نمایش دهد و اگر می خواهیم برنامه رفتار متفاوتی داشته باشد، باید خط لوله را با اضافه کردن کدهای اضافی در روش Configure تغییر دهیم.
به عنوان مثال، اگر می خواهیم فایل های استاتیک مانند فایل index.html را ارائه دهیم، باید مقداری کد را به روش Configure اضافه کنیم.
همچنین می توان صفحه خطا داشته باشید یا درخواست ها را به یک کنترل کننده ASP.NET MVC هدایت کنید؛ هر دو این سناریوها نیز نیازمند انجام برخی کارها در روش Configure هستند.
در کلاس Startup، روش ()ConfigureServices نیز وجود دارد. این روش به ما کمک می کند تا اجزای برنامه خود را پیکربندی کنید.
الان برنامه همیشه یک متن ثابت (مثل Hello World) را نشان میدهد. میخواهیم به جای اینکه این متن را مستقیم در کد بنویسیم، آن را از یک منبع دیگر مثل یک دیتابیس، وبسرویس یا فایل JSON بارگذاری کنیم.
در Solution Explorer، روی پروژه خود کلیک راست کنید و سپس گزینهی Add > New Item را انتخاب کنید.
این کار به شما اجازه میدهد تا فایل جدیدی به پروژه اضافه کنید، مانند یک کلاس جدید، فایل تنظیمات، یا هر نوع فایل دیگری که نیاز دارید.
در پنل سمت چپ، گزینهی Installed > Code را انتخاب و سپس در پنل وسط، فایل JSON File را انتخاب کنید.
فایل را با نام AppSettings.json ذخیره کنید و سپس روی دکمه Add کلیک کنید تا فایل به پروژه اضافه شود.
خلاصه درس