چند وقتی است مایکروسافت تعدادی از محصولات خود را به صورت سورس باز در اختیار برنامه نویسان قرار دادهاست. برای مثال شما میتوانید در لینوکس یا مک، از نسخهی net core. آن استفاده کنید. در این مقاله روش اجرای sql server را در لینوکس، با استفاده از docker؛ تشریح خواهیم کرد. همچنین با یک پروژه ساده net core.، بر روی دیتابیس add-migration را اجرا کرده و همچنین چند رکورد را در جدولی ثبت میکنیم. البته میتوان نسخهی نصبی sql server را بدون نیاز ...
روش متداول کار با تزریق وابستگیهای برنامههای مبتنی بر NET Core.، عموما با ثبت و معرفی یک سرویس به صورت زیر، توسط متدهای AddTransient، AddSingleton و AddScoped است: public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
// ...
services.AddTransient<ICustomerService, DefaultCustomerService>();
// ...
}
}
و سپس است ...
همانطور که در قسمت قبل نیز بررسی کردیم، ASP.NET Core امکان تزریق وابستگیهای متداول را در اکثر قسمتهای آن مانند کنترلرها، میانافزارها و غیره، میسر و پیش بینی کردهاست؛ اما همیشه و در تمام مکانهای یک برنامهی وب، امکان تزریق وابستگیها در سازندهی کلاسها وجود ندارد و مجبور به استفادهی از الگوی Service Locator میباشیم. در این قسمت این مکانهای ویژه را بررسی خواهیم کرد.
HttpContext و امکان دسترسی به Service Locatorها ...
الگوی Service locator را در قسمت دوم بررسی کردیم. همانطور که عنوان شد، بهتر است تا جائیکه امکان دارد از بکارگیری آن به علت ضدالگو بودن پرهیز کرد. در ادامه قسمتهای مختلف یک برنامهی ASP.NET Core را که میتوان بدون نیاز به استفادهی الگوی Service locator، تزریق وابستگیها را در آنها انجام داد، مرور میکنیم.
در کلاس آغازین برنامه
در اینجا در متد Configure آن تنها کافی است اینترفیس سرویس مدنظر خود را مانند IAmA ...
یکی از پرکاربردترین اینترفیسهای NET.، اینترفیس IDisposable است. عموما کلاسهایی که ارجاعی را به منابع غیر مدیریت شده مانند فایلها و سوکتها داشته باشند، این اینترفیس را پیاده سازی میکنند. garbage collector به صورت خودکار حافظهی اشیاء مدیریت شده یا دات نتی را رها میکند؛ اما چیزی را در مورد منابع غیر مدیریت شده نمیداند. به همین جهت پیاده سازی اینترفیس IDisposable روشی را جهت پاکسازی این منابع به garbage collector معرفی میکند.
...
در قسمت قبل برای دریافت وهلهای از سرویس TestService، به صورت ()<serviceProvider.GetService<ITestService عمل کردیم. این روش در اصل الگوی Service Locator نام دارد که جزئیات بیشتری از آنرا در این قسمت بررسی خواهیم کرد.
قلب سیستم تزریق وابستگیهای NET Core. اینترفیس IServiceProvider است
IServiceProvider که اساس IoC Container برنامههای مبتنی بر NET Core. را تشکیل میدهد، در اسمبلی System.ComponentModel و در ...
مهارتهای تزریق وابستگیها در برنامههای NET Core. - قسمت اول - تزریق وابستگیها در برنامههای کنسول
پیشتر با مقدمات تزریق وابستگیها در برنامههای ASP.NET Core آشنا شدهایم:
- مقدمهای بر تزریق وابستگیها درASP.NET Core - ارتقاء به ASP.NET Core 1.0 - قسمت 6 - سرویسها و تزریق وابستگیها
در ادامه در طی چند مطلب میخواهیم نکات و سناریوهای تکمیلی مرتبط با امکانات تزریق وابستگیهای توکار برنامههای مبتنی بر NET Core. را بررسی کنیم.
تزریق وابستگیها در برنامههای کنسول ...
نسخه net core 2.2. Preview 3.، روز چهارشنبه 25 مهر، مطابق با 17 اکتبر منتشر شد. این نسخه شامل ویژگیهای جدیدی از جمله موارد زیر میباشد: تغییرات عمده در API Authorization Server بهبود کارآیی و سرعت پشتیبانی از Spatial Data برای SQL Server و SQLite پشتیبانی از Cosmos DB جایگزینی Bootstrap 4, Angular 6 مهمترین ویژگی مربوط به EF Core برای گروهی از برنامه نویسان، پشتیبانی از فیلدهای جغرافیایی یا همان Spatial ...
اگر پروژهی شما به همراه توزیع بستههای نیوگت است، پس از مدتی، از build و آپلود دستی بستههای نیوگت آنها خسته خواهید شد. همچنین این سؤال هم برای مصرف کنندگان بستهی نیوگت شما همواره وجود خواهد داشت: «آیا بستهی نهایی را که آپلود کرده، دقیقا بر اساس سورس کد موجود در مخزن کد عمومی آن تهیه شدهاست؟»
برای رفع این مشکلات، از روشهای توسعهی به همراه ابزارهای یکپارچگی مداوم استفاده میشود. برای نمونه، AppVeyor یکی از سرویسهای ابری ...
زمانیکه به صفحهی دریافت نگارشهای مختلف NET Core. مراجعه میکنیم، بستههای مختلفی از یک نگارش قابل مشاهده هستند و در بدو امر واضح نیست که کدامیک را باید دریافت کرد. در این مطلب تفاوتهای بین این بستهها را مرور خواهیم کرد.
کدام نگارشهای NET Core. بر روی سیستم شما نصب هستند؟
پیش از انجام هرکاری نیاز است بررسی کنیم کدامیک از بستههای ارائه شده، بر روی سیستم جاری نصب هستند. برای انجام اینکار دستور زیر را در خط فر ...