Контейнер .NET IoC для ASP.NET MVC среднего размера - PullRequest
6 голосов
/ 25 марта 2012

Моя команда планирует начать новый проект в июне этого года. Это приложение обычно используют 2000 одновременно работающих пользователей. Сейчас мы обсуждаем техническое решение - какой контейнер IoC мы будем использовать в нашем проекте. Все члены моей команды не имеют опыта работы с IoC, некоторые из нас читают и знают, что это такое. Наши требования:

  1. Производительность. Наше руководство заявляет, что IoC может замедлить работу приложения, и они ожидают, что используемый нами контейнер IoC не снизит производительность. Они также ожидают, что контейнер IoC будет иметь хорошую производительность для небольшого или большого процесса распознавания.
  2. Наборы функций - я и мои коллеги ожидаем, что он имеет богатые наборы функций. В настоящее время я не знаю, какую функцию мы будем использовать, но у меня есть опыт, что какой-то компонент может легко запуститься, но не может сделать что-то более продвинутое.
  3. Документы или книги - я планирую изучать IoC, который мы выбрали, читая онлайн-документы или книги.
  4. Работа с ASP.NET MVC 4

1 Ответ

7 голосов
/ 07 сентября 2012

Я использовал StructureMap, Autofac и Ninject. Они все очень хорошие.

Я бы рекомендовал использовать CommonServiceLocator [http://commonservicelocator.codeplex.com] как часть вашей реализации. Таким образом, потом легко передумать.

Лично мне нравится Autofac лучший. Он имеет хороший баланс функций и простоты.

  • Поддержка автоматического подключения и сканирования сборки
  • Пожизненное определение объема (например, Singleton или HttpRequest)
  • Простая регистрация реализации для нескольких типов запросов
  • Поддерживает именованную или ключевую (именованную Enum) регистрацию
  • Это быстро

http://code.google.com/p/autofac/wiki/MvcIntegration http://nuget.org/packages/Autofac.CommonServiceLocator-unofficial

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...