Хобрук: Ваш путь к мастерству в программировании

Используйте IoC со старым проектом веб-сервиса

У меня старая (2008 г.) трехуровневая система бэк-офиса:

  • Слой веб-сервисов; веб-службы типа asmx. Вероятно сделано из шаблона "Приложение веб-службы ASP.NET".
  • Бизнес-уровень; Я не хочу касаться этого.
  • Слой данных; Бардак. Все виды доступа к данным.

Моя цель - очистить это, написать несколько модульных тестов и т. Д.

Для начала; Можно ли добавить IoC-контейнер. Где его инициализировать? В настоящее время проект работает на .NET Framework 3.5.

Ивар


  • Если ваша цель - убрать это. Найдите время, чтобы взглянуть на некоторые шаблоны проектирования и поставить себе цель для окончательного дизайна приложения (цель, которой вы никогда не достигнете, это просто «подход»). Например, прочтите эту статью, в которой описывает, как писать легко обслуживаемые веб-службы. 09.10.2012

Ответы:


1

Нашли для вас хорошую статью

http://ruijarimba.wordpress.com/2011/12/27/asp-net-web-services-dependency-injection-using-unity/

Вкратце:

  1. Настройте контейнер DI / IoC в global.asax.cs и получите их свойство Container для доступа к вашему контейнеру DI / IoC.

  2. Разрешите свои зависимости или создайте контейнер в конструкторе вашей службы или создайте базовый класс, как показано в примере.

  3. По желанию, когда вам нужно, вы можете разрешить свою зависимость от контейнера а-ля "Service locator"

08.10.2012
Новые материалы

Создание кнопочного меню с использованием HTML, CSS и JavaScript
Вы будете создавать кнопочное меню, которое имеет состояние наведения, а также позволяет вам выбирать кнопку при нажатии на нее. Финальный проект можно увидеть в этом Codepen . Шаг 1..

Внедрите OAuth в свои веб-приложения для повышения безопасности
OAuth — это широко распространенный стандарт авторизации, который позволяет приложениям получать доступ к ресурсам от имени пользователя, не раскрывая его пароль. Это позволяет пользователям..

Классы в JavaScript
class является образцом java Script Object. Конструкция «class» позволяет определять классы на основе прототипов с чистым, красивым синтаксисом. // define class Human class Human {..

Как свинг-трейдеры могут использовать ИИ для больших выигрышей
По мере того как все больше и больше профессиональных трейдеров и активных розничных трейдеров узнают о возможностях, которые предоставляет искусственный интеллект и машинное обучение для улучшения..

Как построить любой стол
Я разработчик программного обеспечения. Я люблю делать вещи и всегда любил. Для меня программирование всегда было способом создавать вещи, используя только компьютер и мое воображение...

Обзор: Машинное обучение: классификация
Только что закончил третий курс курса 4 часть специализации по машинному обучению . Как и второй курс, он был посвящен низкоуровневой работе алгоритмов машинного обучения. Что касается..

Разработка расширений Qlik Sense с qExt
Использование современных инструментов веб-разработки для разработки крутых расширений Вы когда-нибудь хотели кнопку для установки переменной в приложении Qlik Sense? Когда-нибудь просили..