کاربرد فایل appsetting.json در پروژه های Asp.net core چیست ؟
سلام لطفا بفرمایید کاربرد فایل appsetting.json در پروژه های Asp.net core چیست ؟ چه کارهایی رو میشه از طریق این فایل انجام داد ؟
کاربردهای فایل appsetting.json در Asp.net core
قبل از Asp.net Core در پروژه های MVC فایلی به نام web.config وجود داشت که از طریق این فایل تنظیمات و پیکربندی های پروژه در آن انجام می شد. اما در Asp.net core این فایل حذف شده و فایلی به نام appsetting.json معرفی شده است. همان طور که از پسوند این فایل مشخص می باشد دستوراتی که در این فایل قرار میگیرد با فرمت json می باشد.
شما می توانید برای پیکربندی و برخی تنظیمات مهم و اساسی پروژه مثل رشته اتصال (Connection string) به دیتابیس، تنظیمات ایمیل و یا برخی تنظیمات سفارشی دیگر از این فایل استفاده کنید.
چه نوع تنظیماتی در فایل appsetting.json قابل انجام است ؟
به طور کلی توسط فایل appsetting.json تنظیمات و پیکربندی هایی در گروه های زیر انجام می شود:
- Environment Variable : تعریف متغیرهای عمومی برای استفاده در همه جای پروژه
- User Secrets : تعریف متغیرها و کلیدهای امنیتی برای ایجاد امنیت اطلاعات کاربران و ...
- Command Line Arguments : آرگومان ها و دستورات مربوط به خط فرمان
- appsettings.json file : و تنظیمات مربوط به خود فایل appsetting.json
کدهای زیر نمونه ای از یک فایل appsetting.json در یک پروژه Core می باشد.
{
//ایجاد یک کلید برای نگهداری رشته اتصال
"ConnectionStrings": {
"MyConnectionString": "Data Source=.; Initial Catalog=MyDB; user Id=sa; Password=123; Trust Server Certificate=true; MultipleActiveResultSets=true"
},
//ایجاد دو کلید برای نگهداری رشته های امنیتی
"TokenKey" : "MyCar_Name@IsBMW012ErBnpoV",
"SecurityKey" : "16Chfr@rT5_rrFgk",
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*"
}
همانطور که در بالا مشاهده می کنید کلیدی به نام MyConnectionString برای نگهداری رشته اتصال ایجاد شده است. همچنین دو کلی به نام های TokenKey و SecurityKey هم ایجاد شده که مقادیری در آنها نگهداری می شود.
دسترسی به مقادیر ذخیره شده در کلیدهای تعریف شده در فایل appsetting.json
برای دسترسی به مقادیر ذخیره شده در فایل appsetting.json از اینترفیس IConfiguration می توانید استفاده کنید. به مثال زیر دقت کنید.
public class HomeController : Controller
{
private readonly IConfiguration _configuration;
public HomeController( IConfiguration configuration)
{
_configuration = configuration;
}
public IActionResult Index()
{
//دسترسی به مقدار ذخیره شده در AppValue
var AppValue = _configuration.GetValue<string>("TokenKey");
return View();
}
}
- آموزش استفاده از SignalR در Asp.net Core با مثال عملی
- ادغام چند گزارش استیمول سافت بصورت پی دی اف در یک فایل
- نحوه تغییر استایل کامپوننت select2 چگونه است ؟
- چگونه امنیت پروژه را در Asp.net Core افزایش دهیم ؟
- ارسال پارامتر در دستور window.open جی کویری
- ارسال پارامتر از طریق جاوااسکریپت با کلیک روی تگ a
- خطای 500 زمان اجرا شدن پروژه روی هاست
- کویری نویسی در استیمول سافت جهت فیلتر اطلاعات
- نمایش صفحه در پنجره جدید با کلیک روی لینک (تگ a) در Asp
- افزودن مقادیر به صورت دستی به List دریافت شده از ریپازیتوری
- کار با CkEditor با قابلیت آپلود عکس
- خطا در ایجاد migration در Asp.net core
- تفاوت های Asp.net core و Asp.net mvc چیه؟
- دلیل اسپم شدن ایمیل های ارسالی از سرور
- نحوه لایه بندی پروژه Core و اضافه کردن به IIS
- ارسال ایمیل در Asp.net core
- آیا میشه در mvc core از کامپونت استفاده کرد
- آپلود فایل در Asp.net core چگونه است؟
- حذف کامل یک رکورد در جدول ریلیشن شده
- اشکال در آپلود فایل ویدیو در mvc core 2