Реализация портала на основе ASP.NET - PullRequest
3 голосов
/ 06 июля 2010

Требуется написать портал , такой как веб-приложение на базе ASP.NET .Должно быть легковесное центральное приложение , которое реализует первичную навигацию и аутентификацию .Дизайн достигается с помощью мастер-страниц .

. Далее есть несколько более или менее независимых приложений (старые и новые !!), которые должны легко и независимо должны быть интегрированы в это центральное приложение (которое должно быть точкой входа в эти приложения).Какие способы , архитектуры , шаблоны , методы и возможности могут помочь и поддержать достижение этих целей?Например, имеет смысл запускать (под) приложения в iframe ?

Существуют ли (легкие и легкие в освоении) портальные платформы , которые можно использовать(не такие большие вещи, как «DOTNETNUKE»)?

Заранее большое спасибо за советы, подсказки и помощь!

Ответы [ 2 ]

3 голосов
/ 06 июля 2010

НЕ ПОВТОРЯТЬ КОЛЕСО!Особенность DotNetNuke в том, что он может быть таким же большим или маленьким, как вы его делаете.Если вы используете его правильно, вы обнаружите, что можете ограничить его тем, что вам нужно.Не подвергайте себя той же боли, которую уже испытали другие.Если, конечно, вы заинтересованы только в том, чтобы учиться на своей боли.

Я не говорю, что DNN - это то, что вам нужно.Это может быть не так, но потратьте время на изучение ряда порталов с открытым исходным кодом, прежде чем вы решите написать свой собственный.Для разработки и тестирования описанных вами функций понадобятся тысячи часов, если вы напишите их все с нуля.

@ Майкл Шимминс (Michael Shimmins) предлагает несколько хороших советов о том, что использовать для реализации приложения портала с некоторыми из новейших технологий и шаблонов наилучшей практики.Я бы сказал, да, это очень хорошие рекомендации, но я бы посоветовал вам либо найти кого-то, кто уже сделал это таким образом, либо начать новый проект с открытым исходным кодом на codeplex, и попросить других помочь вам.

2 голосов
/ 06 июля 2010

Даниэль Дайсон делает тонкое замечание, но если вы действительно хотите реализовать его самостоятельно (может быть причина), я бы рассмотрел следующие компоненты:

  • MVC 2.0
  • Инверсия управления / внедрение зависимостей (например, StructureMap)
  • Структура управляемого расширения
  • NHibernate (напрямую или через библиотеку, такую ​​как Sh # rp или Spring.NET
  • Сервисная шина (например, NServiceBus).

Эта комбинация дает вам гибкий интерфейс пользователя через MVC, который можно легко добавить с помощью плагинов (предоставляемых и используемых через MEF), стандартного доступа к данным.библиотека (NHibernate), которая может быть легко настроена отдельными подключаемыми модулями для подключения к определенным базам данных, возможность публиковать события и «подбирать их» с помощью компонентов, составленных во время выполнения (NServiceBus).

Используя IoC и DI, вы можетеможет обойти интерфейсы, которые разрешаются во время выполнения в зависимости от требуемой конфигурации. MEF дает вам гибкостьопределить, «что» может делать каждый плагин, а затем оставить это на усмотрение плагинов, в то время как ваше центральное приложение контролирует сквозные проблемы, такие как аутентификация, ведение журнала и т. д.

...