بررسی Environment Variable ها در ASP.NET Core

بررسی Environment Variable ها در ASP.NET Core

در این پست از وبسایت پرووید، در رابطه با بررسی Environment Variable ها در ASP.NET Core صحبت خواهیم کرد. به ادامه ی مطلب بروید.

در این قسمت از این آموزش از وب سایت پرووید در رابطه با مفهوم Environment Variable صحبت خواهیم کرد. ترجمۀ کلمۀ Environment Variable متغیر محیط می باشد. اما بهتر است که بجای ترجمه کردن آن مفهوم آنرا یاد بگیریم و از خود کلمه ی فنی Environment Variable استفاده کنیم. خب بیایید ببینیم که Environment Variable چیست و چه نقشی را در توسعۀ اپلیکیشن های ASP.NET Core ایفا می کند. معمولاً در توسعۀ نرم افزار بصورت پیشرفته فازهایی برای یک نرم افزار تولید می شود که قبل از انتشار آن و در دسترس کاربران قرارگرفتن آن، این فازها اتفاق می افتند. بطور کلی و براساس رسم و رسومات این فازها Development و Staging و Production می باشند. به عنوان یک توسعه دهنده نرم افزار ممکن است که بخواهید رفتار یک برنامه را براساس فازهای تعریف شده تنظیم کنید. با استفاده از Environment Variable به راحتی می توانید مشخص کنید که در حال حاضر برنامه در کدام یک از این فازها قرار گرفته و چه رفتاری را باید از خود نشان بدهد.

بسته ی آموزش ویدئویی اصول برنامه نویسی در ASP.NET Core

از شما دعوت می کنیم که از بسته ی آموزش ویدئویی اصول برنامه نویسی در ASP.NET Core دیدن کنید.

در فریم ورک ASP.NET Core یک Environment Variable بنام ASPNETCORE_ENVIRONMENT تعریف می شود که مشخص کنندۀ Runtime Environment یا محیط اجرای برنامه است. مقدار تعریف شده برای این Variable می تواند هرچه که دوست دارید باشد اما بر اساس رسم و رسومات از سه مقدار Development و Staging و Production استفاده می شود. هر کدام از این مقادیر نمایانگر فازهایی می باشند که یک برنامه قبل از منتشر شدن آنها را تجربه می کند. مقدار تعریف شده برای این متغیر و یا Environment Variable در Windows و MacOS به صورت Case-Insensitive (به حروف کوچک و بزرگ حساس نمی باشد) و در سیستم عامل لینوکس Case-sensitive (به حروف بزرگ و کوچک حساس می باشد).

به منظور تنظیم کردن مقدار مربوط به این Environment Variable در ویژوال استودیو می توانید براحتی بر روی پروژه راست کلیک کرده و سپس گزینه ی Properties را انتخاب کنید و پس از آن از قسمت Debug اقدام به تغییر دادن مقدار این متغییر کنید. این موضوع در تصویر زیر نشان داده شده است.

بسته ی آموزش ویدئویی ساخت یک Enterprise Application با ASP.NET Core MVC

از شما دعوت می کنیم که از بسته ی آموزش ویدئویی ساخت یک Enterprise Application با ASP.NET Core MVC دیدن کنید.

همانطور که در تصویر زیر مشاهده می کنید در قسمت Debug از پنجرۀ Properties یک بخش به نام Environment Variable وجود دارد.

با تغییر دادن مقدار این متغییر، مقدار تنظیم شده در فایل Launchsettings.json قرار خواهد گرفت. این موضوع در تصویر زیر نشان داده شده است.

علاوه بر این روش، می توانید مقدار مربوط به این Environment Variable را بصورت مستقیم در فایل Lunchsettings.json تنظیم کنید.

خواندن مقدار یک Environment Variable در زمان اجرای برنامه

علاوه بر تنظیم کردن یک مقدار برای یک Environment Variable می توانیم به منظور کنترل کردن کدهای مورد نظر و اجرا شدن آنها در هر کدام از فازهای توسعۀ نرم افزار از خواندن یک Environment Variable در زمان اجرای برنامه و یا اصطلاحاً Run-time استفاده کنیم. یک اینترفیس با نام IHostingEnvironment که به عنوان یک سرویس در فریمورک ASP.NET Core تعریف شده است دارای یک Property با نام Environment Name می باشد که مقدار مربوط به ASPNETCore_Environment در درون آن قرار داده شده است. علاوه بر این موضوع Extension Method هایی نیز در فریم ورک ASP.NET Core وجود دارند که به منظور چک کردن مقدار این متغیر تعریف شده اند. برخی از این Extension Method ها IsDevelopment و IsStaging و IsEnvironment و IsProduction نام دارند. در رابطه با Extension Method ها در آموزش کامل توسعه نرم افزار با سی شارپ صحبت کرده ایم. اینترفیس IHostingEnvironment توسط لایه ی میزبانی و یا اصطلاحاً Hosting Layer از ASP.NET فراهم شده است و می تواند در هر کجای برنامه با استفاده از مکانیزم Dependency Injection مورد استفاده قرار بگیرد. کدی که در قسمت زیر مشاهده می فرمایید نحوه ی چک کردن مقدار این Environment Variable در درون متد Configure از کلاس Startup می باشد.

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
    if (env.IsEnvironment("Development"))
    {
        // code to be executed in development environment 

    }

    if (env.IsDevelopment())
    {
        // code to be executed in development environment 

    }

    if (env.IsStaging())
    {
        // code to be executed in staging environment 

    }

    if (env.IsProduction())
    {
        // code to be executed in production environment 

    }
} 

یکی دیگر از کاربردهای استفاده کردن از Environment Variable ها در مدیریت استثناها و یا اصطلاحاً Exception Handling می باشد که در قسمت بعدی از این آموزش در رابطه با آن صحبت خواهیم کرد.

امیدواریم که این آموزش از وبسایت پرووید نیز مورد توجه تمامی دوستان عزیز قرار گرفته باشد. از شما دعوت می‌کنیم که از دیگر آموزش های ما در رابطه با فریم ورک ASP.NET Core استفاده کنید. لیست کامل این آموزش ها را می توانید در پست مربوط به آموزش کامل توسعه وب اپلیکیشن با ASP.NET Core مشاهده کنید.

مرتضی گیتی
بدون نظر

ارسال نظر

نظر
نام
ایمیل
وب سایت