Предложения / Рекомендации для веб-приложения с подпоисками

StackOverflow https://stackoverflow.com/questions/3072389

Вопрос

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

Приложение станет веб-сайтом на основе внутрисея с использованием аутентификации Windows, работает на IIS и с использованием ASP.NET. Это необходимо будет структурировать в качестве основного веб-приложения с суб-веб-приложениями. По сути, весь объем - это композитное приложение, основанное на браузере, что состоит из дискретных, функционально полных модулей или субэлементов.

Это композитное веб-клиентское приложение будет иметь основной или оболочковый модуль для предоставления общей структуры пользовательского интерфейса. Кроме того, модуль оболочки обеспечит доступ к общим услугам, что все отдельные подпоиплы или модули могут использовать. Затем каждое поднос / модуль будет содержать собственную функциональность и реализацию, но интегрировать с пользовательским интерфейсом оболочки.

Далее, основываясь на пользователе и какое из подположенных приложений доступно, приложение Main или Shell будет динамически создавать вкладки (или кнопки или что-то) в качестве способа доступа к каждому отдельному приложению. И мы будем хранить данные пользователя и приложения в таблице базы данных.

Таким образом, например, у нас будет приложение отчетов, приложение отображения и, вероятно, пару других четких приложений. При запуске приложения Main / Shell после определения того, кто является пользователем, основное приложение будет запрашивать базу данных, чтобы определить, какие подполым пользователь может использовать и построить пользовательский интерфейс. Затем пользователь может перемещаться между доступными подпоисками и выполнять свою работу в каждом.

Я надеюсь, что все это имеет смысл.

В любом случае, мне интересно, что, если таковые имеются, ранее существующие технологии / рамки будут лучше всего работать для архитектуры и развития такой системы.

Будет ли завод программного обеспечения веб-клиента хорошим выбором? Будь хорошим выбором другого решения MVP? Будь хорошим выбором ASP.NET? Что-то другое???? Ничего из них не будет хорошим выбором, и мы должны просто развить все с нуля, используя веб-формы? Любая другая информация, о которой я должен знать?

Спасибо!!!!

Это было полезно?

Решение

ASP.NET MVC2 также облегчает использование областей. Вот ссылка, которая может быть полезна

http://odetocode.com/blogs/scott/Archive/2009/10/13/asp-net-mvc2-preview-2-areas-and-routes.aspx.

По сути, вы можете использовать области, чтобы вырвать ваши «подпапплики»

Другие советы

Прежде чем обсуждать рамки, некоторые моменты для рассмотрения при построении такой системы (где могут быть подключены подполы):

  • Возможные точки интеграции (данные, услуги, деловая логика, интерфейс UI)
  • Скрещенные проблемы (система регистрации системы, регистрация аудита, конфигурация, безопасность)
  • Кто будет разрабатывать суб-приложения (вы, люди, которые работают в вашем офисе, или кто-либо / большее сообщество)

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

С точки зрения домохозяйств: вы найдете множество рамки, но очень мало предлагают полный ассортимент того, что вы после:

  • ASP.NET WebForms в основном является совершенно вакантной посылкой земли - вам придется создавать самые важные вещи или приносить дополнительные рамки (такие как библиотеки MS Enterprise)
  • MVC ASP.NET эффективно то же самое, но в другом стиле.

Ни один из них не являются «рамками», но вы можете использовать любой из них, как «платформа» низкоуровневой базы «.

  • MS INT Libs отлично подходит для сквозных проблем (например, доступ к данным, регистрации и т. Д.) Но это все.
  • Там также есть ассортимент хорошего Рамки инверсии зависимости Но опять же это не полное решение.

Большое дело для контроля зависимостей: убедитесь, что вы издали от аннотации слоя данных (для начала), придерживайтесь принципов вокруг сегрегации интерфейса, повторного использования и так далее.

Один вариант, который вы могли бы рассмотреть (и я выдуваю свою трубку здесь - поэтому я не беспристрастный) - это Framework Application Application Priments Open Source.Морфолиа«Это приняло мне около 5 лет, неполный рабочий день). Даже если вы не используете его, вы можете найти несколько хороших идей или код, которые вы можете «воровать»:

Морфилия:

Это доступно для скачивания в http://morpholia.codeplex.com/

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top