loading...

???? ?????? ????? ????? ??

بازدید : 25
دوشنبه 9 آبان 1401 زمان : 10:49

در ASP.NET 5، نیاز به به کار گیری از پوشه Web.config برای طراحی سایت در مشهد مقادیر تنظیمات (configuration) حذف گردیده است. مایکروسافت میخواهد عمل deploy کردن اپلیکیشن برای cloud را راحت‌خیس سازد و نرم افزار مقادیر تنظیمات درست را به طور اتومات برای این گوشه و کنار بخواند. سیستم تازه شمارا حاذق می‌سازد مقادیر اسم‌گذاری گردیده را از منابع متنوعی (مانند JSON، XML یا این که environment variableها) درخواست نمایید.

در فولدر Startup.cs، میتوانید منابع را برای مقادیر configuration اضافه یا این که حذف نمایید.

قطعه کد بالا پروژه‌ای را نماد میدهد که برای بازیابی مقادیر configuration از یک فولدر JSON و متغیرهای محیطی (environmental variable) تهیه شد‌ه‌است. در شکل نیاز به معلوم کردن منابع دیگر می توانید این کد را تغییر‌و تحول دهید. طراحی سایت در فولدر config.json معین‌گردیده، می توانید مقادیر را ارائه دهید.

در دور و بر هاست، مثل Azure، می توانید environmental variableها را تهیه فرمائید رایاپارس و پس از deploy کردن نرم افزار این مقادیر به مکان مقادیر تنظیمات محلی به صورت اتوماتیک به کار گیری می گردند. شما می توانید اپلیکیشن خویش را فارغ از نگرانی در باب نشر مقادیر آزمایش deploy نمائید.

تزریق تعلق (Dependency injection)

DI در قاب‌ورک‌های ASP.NET، مانند MVC، Web API و SignalR حفاظت می گردد، ahrefs البته به شیوه استوار و همگی جانبه‌ای وجود ندارد. ASP.NET 5 یک انتزاع DI داخلی ساخت می‌نماید که به روشی استوار به طور کلی web stack مو جود میباشد. شما در هنگام فعال‌ساز‌ی، در middleware، در فیلترها، در کنترلرها، در model binding و به طور مجازی هر بخشی از pipeline که می خواهید برای خدمت‌های خویش استعمال فرمایید، میتوانید به خدمت‌ها دسترسی پیدا نمائید. ASP.NET 5 مشمول یک کانتینر DI برای خویش راه اندازی سیستم میباشد، البته شما می توانید به راحتی کانتینر پیش‌فرض را با کانتینر انتخابی خویش (Autofac، Ninject و غیره) جایگزین فرمائید.

برای مثال برای دیدن شیوه استعمال از constructor injection با ASP.NET MVC 6، یک پروژه ASP.NET 5 Starter Web تازه ساخت و ساز کرده و یک time service معمولی اضافه نمایید:

using System;

namespace WebApplication1

{

public class TimeService

{

public TimeService()

{

Ticks = DateTime.Now.Ticks.ToString();

}

public String Ticks { get; set; }

}

}
کلاس بی آلایش خدمت Ticks فعلی را هنگام فراخوانی کانستراکتور تهیه و تنظیم می‌نماید.

در مرحله آنگاه، time service را تحت عنوان transient service در اسلوب ConfigureServices ی کلاس Startup تصویب فرمایید:

public void ConfigureServices(IServiceCollection services)

{

services.AddMvc();

services.AddTransient();

}
آنگاه، HomeController را آپدیت نمائید تا از constructor injection به کار گیری نماید و Ticks را هنگام تولید TimeService object بنویسید.

در ASP.NET 5، نیاز به به کار گیری از پوشه Web.config برای طراحی سایت در مشهد مقادیر تنظیمات (configuration) حذف گردیده است. مایکروسافت میخواهد عمل deploy کردن اپلیکیشن برای cloud را راحت‌خیس سازد و نرم افزار مقادیر تنظیمات درست را به طور اتومات برای این گوشه و کنار بخواند. سیستم تازه شمارا حاذق می‌سازد مقادیر اسم‌گذاری گردیده را از منابع متنوعی (مانند JSON، XML یا این که environment variableها) درخواست نمایید.

در فولدر Startup.cs، میتوانید منابع را برای مقادیر configuration اضافه یا این که حذف نمایید.

قطعه کد بالا پروژه‌ای را نماد میدهد که برای بازیابی مقادیر configuration از یک فولدر JSON و متغیرهای محیطی (environmental variable) تهیه شد‌ه‌است. در شکل نیاز به معلوم کردن منابع دیگر می توانید این کد را تغییر‌و تحول دهید. طراحی سایت در فولدر config.json معین‌گردیده، می توانید مقادیر را ارائه دهید.

در دور و بر هاست، مثل Azure، می توانید environmental variableها را تهیه فرمائید رایاپارس و پس از deploy کردن نرم افزار این مقادیر به مکان مقادیر تنظیمات محلی به صورت اتوماتیک به کار گیری می گردند. شما می توانید اپلیکیشن خویش را فارغ از نگرانی در باب نشر مقادیر آزمایش deploy نمائید.

تزریق تعلق (Dependency injection)

DI در قاب‌ورک‌های ASP.NET، مانند MVC، Web API و SignalR حفاظت می گردد، ahrefs البته به شیوه استوار و همگی جانبه‌ای وجود ندارد. ASP.NET 5 یک انتزاع DI داخلی ساخت می‌نماید که به روشی استوار به طور کلی web stack مو جود میباشد. شما در هنگام فعال‌ساز‌ی، در middleware، در فیلترها، در کنترلرها، در model binding و به طور مجازی هر بخشی از pipeline که می خواهید برای خدمت‌های خویش استعمال فرمایید، میتوانید به خدمت‌ها دسترسی پیدا نمائید. ASP.NET 5 مشمول یک کانتینر DI برای خویش راه اندازی سیستم میباشد، البته شما می توانید به راحتی کانتینر پیش‌فرض را با کانتینر انتخابی خویش (Autofac، Ninject و غیره) جایگزین فرمائید.

برای مثال برای دیدن شیوه استعمال از constructor injection با ASP.NET MVC 6، یک پروژه ASP.NET 5 Starter Web تازه ساخت و ساز کرده و یک time service معمولی اضافه نمایید:

using System;

namespace WebApplication1

{

public class TimeService

{

public TimeService()

{

Ticks = DateTime.Now.Ticks.ToString();

}

public String Ticks { get; set; }

}

}
کلاس بی آلایش خدمت Ticks فعلی را هنگام فراخوانی کانستراکتور تهیه و تنظیم می‌نماید.

در مرحله آنگاه، time service را تحت عنوان transient service در اسلوب ConfigureServices ی کلاس Startup تصویب فرمایید:

public void ConfigureServices(IServiceCollection services)

{

services.AddMvc();

services.AddTransient();

}
آنگاه، HomeController را آپدیت نمائید تا از constructor injection به کار گیری نماید و Ticks را هنگام تولید TimeService object بنویسید.

نظرات این مطلب

تعداد صفحات : -1

درباره ما
موضوعات
آمار سایت
  • کل مطالب : 398
  • کل نظرات : 0
  • افراد آنلاین : 1
  • تعداد اعضا : 0
  • بازدید امروز : 180
  • بازدید کننده امروز : 1
  • باردید دیروز : 59
  • بازدید کننده دیروز : 0
  • گوگل امروز : 0
  • گوگل دیروز : 0
  • بازدید هفته : 259
  • بازدید ماه : 400
  • بازدید سال : 1293
  • بازدید کلی : 28472
  • <
    اطلاعات کاربری
    نام کاربری :
    رمز عبور :
  • فراموشی رمز عبور؟
  • خبر نامه


    معرفی وبلاگ به یک دوست


    ایمیل شما :

    ایمیل دوست شما :



    کدهای اختصاصی