0

Я работаю над проектом с Entity Framework. Я хочу знать, нормально ли использовать подключение для зависимостей Entity для Entity для модульного тестирования. Я хочу начать с маленького погружения в мир DI, а также использовать (протестировали в простом приложении) Autofac в качестве контейнера. Также вопрос на будущее. Если у меня есть более 50 моделей просмотра, как я предполагаю использовать для них инъекцию зависимостей. Я прочитал в сети, что не нормально иметь более 5 зависимостей в конструкторе контроллера.Injection Dependency В контроллере ASP.net

+2

инъекция зависимостей не ограничивается только для модульного тестирования, это для ослабленной связи модулей –

+0

Я стартер, и, начиная без цели, не мой стиль, для начала я хочу знать, как использовать DI для модульного тестирования, особенно для базы данных, потому что приложение, которое я использую, имеет много форм вставки. –

+0

У вас есть googled, как использовать DI в asp.net mvc? –

ответ

2

Хотя ваш вопрос на самом деле не относится к stackoverflow, я попытаюсь дать вам толчок в правильном направлении, предложив два действительно полезных фреймворка с открытым исходным кодом.

  • Ninject действительно прост в использовании и сделает внедрение зависимой инъекции намного более приятным и структурированным.
  • Moq используется для написания модульных тестов и помогает с «mocking», что имеет решающее значение для MVC и любых инъекций зависимости.

Обе каркасы легко доступны с помощью NuGet Package Manager.

Существует множество учебных пособий и демонстраций, доступных по всему Интернету, но here - это простой учебник для написания модульных тестов с использованием этих двух фреймворков, чтобы начать вас.

+0

Я прочитал книгу Pro MVC 5 Адама Фримана (он использовал Ninject и Moq), но когда я читал, у меня не было компьютера. Autofac похож на Ninject. Я хочу протестировать свою программу, не вставляя информацию в реальную базу данных. –

+1

. Для чего нужен moq, вам не нужен Ninject для использования moq. – Oceans

+0

Я не знал, что могу использовать Moq withoud Injection, да, логично это так, хорошо, тогда моя главная цель будет moq: D thanks –