Запитання з тегом «inversion-of-control»

Інверсія управління (IoC) - абстрактний принцип, що описує аспект деяких конструкцій архітектури програмного забезпечення, в якому потік управління системою інвертується порівняно з процедурним програмуванням.


20
SqlException від Entity Framework - Нова транзакція не дозволена, оскільки в сеансі працюють інші потоки
Зараз я отримую цю помилку: System.Data.SqlClient.SqlException: Нова транзакція заборонена, оскільки в сеансі працюють інші потоки. під час виконання цього коду: public class ProductManager : IProductManager { #region Declare Models private RivWorks.Model.Negotiation.RIV_Entities _dbRiv = RivWorks.Model.Stores.RivEntities(AppSettings.RivWorkEntities_connString); private RivWorks.Model.NegotiationAutos.RivFeedsEntities _dbFeed = RivWorks.Model.Stores.FeedEntities(AppSettings.FeedAutosEntities_connString); #endregion public IProduct GetProductById(Guid productId) { // Do a quick sync …

30
Чому мені потрібен контейнер IoC на відміну від прямого коду DI? [зачинено]
Закрито . Це питання ґрунтується на думці . Наразі відповіді не приймаються. Закрито 6 років тому . Заблокований . Це запитання та його відповіді заблоковано, оскільки це питання поза темою, але має історичне значення. Наразі не приймає нових відповідей чи взаємодій. Я деякий час використовував Dependency Injection (DI), вводячи або …

21
Інверсія управління та вприскування залежності
Згідно з документом, написаним Мартіном Фаулером , інверсія управління - це принцип, коли керований потік програми інвертується: замість програміста, який управляє потоком програми, зовнішні джерела (рамки, служби, інші компоненти) беруть під контроль це. Це як би ми щось підключили до чогось іншого. Він згадав приклад про EJB 2.0: Наприклад, інтерфейс …

12
Які рамки інжекційного введення .NET варто розглянути? [зачинено]
Наразі це запитання не підходить для нашого формату запитань. Ми очікуємо, що відповіді будуть підкріплені фактами, посиланнями або експертними знаннями, але це питання, ймовірно, вимагатиме дискусій, аргументів, опитувань чи розширеної дискусії. Якщо ви вважаєте, що це питання можна вдосконалити та, можливо, знову відкрити, відвідайте довідковий центр для ознайомлення . Закрито …

15
Чому IoC / DI не часто зустрічається в Python?
У Java IoC / DI - дуже поширена практика, яка широко використовується у веб-додатках, майже у всіх доступних рамках та Java EE. З іншого боку, є також багато великих веб-додатків Python, але крім Zope (яку я чув, що це дуже жахливо), IoC, здається, не дуже поширений у світі Python. (Назвіть, …

9
Як уникнути божевілля конструктора залежної інжекції?
Я вважаю, що мої конструктори починають виглядати так: public MyClass(Container con, SomeClass1 obj1, SomeClass2, obj2.... ) з постійно зростаючим списком параметрів. Оскільки "Контейнер" - це мій контейнер для ін'єкцій залежності, чому я не можу просто зробити це: public MyClass(Container con) для кожного класу? Які недоліки? Якщо я це роблю, то …

4
“Дружня” бібліотека введення залежностей (DI)
Я розмірковую над дизайном бібліотеки C #, яка матиме кілька різних функцій високого рівня. Звичайно, ці функції високого рівня будуть реалізовані максимально, використовуючи принципи проектування класу SOLID . Таким чином, ймовірно, існуватимуть класи, призначені споживачам для регулярного використання безпосередньо, та "класи підтримки", що є залежностями тих більш поширених класів "кінцевого …

21
Чи потрібна ін'єкція залежності в NodeJS, або як боротися з…?
Зараз я створюю експериментальні проекти з nodejs. Я багато програмував веб-додатки Java EE разом із Spring і оцінив простоту введення залежності там. Зараз мені цікаво: як зробити ін'єкцію залежності з вузлом? Або: мені це навіть потрібно? Чи існує концепція заміни, оскільки стиль програмування інший? Я досі говорю про прості речі, …

5
Як пояснити ін'єкцію залежності у 5-річного віку? [зачинено]
Наразі це запитання не підходить для нашого формату запитань. Ми очікуємо, що відповіді будуть підкріплені фактами, посиланнями або експертними знаннями, але це питання, ймовірно, вимагатиме дискусій, аргументів, опитувань чи розширеної дискусії. Якщо ви вважаєте, що це питання можна вдосконалити та, можливо, знову відкрити, відвідайте довідковий центр для ознайомлення . Закрито …

5
Що таке Замок Віндзор, і чому я повинен піклуватися?
Я давно розробник Windows, порізавши зуби на win32 та ранньому COM. Я працюю з .NET з 2001 року, тому я досить добре володію C # та CLR. Я ніколи не чув про Замок Віндзор, поки не почав брати участь у стеці. Я прочитав посібник "Початок роботи" Castle Windsor, але він …

7
Чи може хтось пояснити Microsoft Unity?
Я читав статті в MSDN про Єдність (введення залежності, інверсія управління), але думаю, що мені потрібно це пояснити простими словами (або простими прикладами). Я знайомий з моделлю MVPC (ми використовуємо його тут), але я просто не можу зрозуміти цю річ Unity, і я думаю, що це наступний крок у нашій …

14
Введення залежності через конструктори чи властивості властивостей?
Я перетворюю клас і додаю до нього нову залежність. В даний час клас приймає існуючі залежності в конструкторі. Тому для узгодженості я додаю параметр до конструктора. Звичайно, є кілька підкласів плюс ще більше для одиничних тестів, тому зараз я граю в гру, щоб змінити всі конструктори на відповідність, і це …

5
Чи існує шаблон для ініціалізації об'єктів, створених через контейнер DI
Я намагаюся змусити Unity керувати створенням моїх об'єктів, і я хочу мати параметри ініціалізації, які не відомі до часу виконання: На даний момент єдиний спосіб, коли я міг би придумати спосіб, як це зробити, це мати метод Init в інтерфейсі. interface IMyIntf { void Initialize(string runTimeParam); string RunTimeParam { get; …

8
Enterprise Library Unity проти інших контейнерів IoC [закрито]
Закрито . Це питання ґрунтується на думці . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб на нього можна було відповісти фактами та цитатами, відредагувавши цю публікацію . Закрито 6 років тому . Удосконаліть це питання Які плюси та мінуси використання Enterprise Library Unity проти інших контейнерів …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.