2013-04-22 5 views
0

Я пытаюсь определить лучший способ сделать это..NET MVC4 - Запуск приложения внутри родительского приложения

В принципе, у меня есть дочернее приложение, которое выполняется внутри родительского приложения в IIS. Я хочу, чтобы иметь возможность запускать это приложение внутри родительского приложения (используя тот же макет и функциональность)

Что я могу сделать для этого? Запуск приложения в iFrame? Загрузка приложения через jQuery в div? Или я должен создать веб-службу, которая отправляет макет родительского приложения в дочернее приложение?

Любые рекомендации приветствуются.

ответ

3

О чем вы говорите, это композиция. Существует целая куча разных композиций, которые вы можете применить, и каждая из них будет иметь за и против.Переполнение стека Isnt действительно отличное место, чтобы получить ответ на то, что «лучший» образец, чтобы использовать, но вот несколько я могу думать:

стороны сервера состава шаблонов

  • Shared компоновочных файл с MVC
    • Этот метод использует файл макета из DLL совместно обеими сайтов для визуализации всех страниц
    • Его довольно легко осуществить, но означает, что необходимо освободить оба участка при изменении файла s
    • Это способствует сильной связи между узлами (что плохо)
  • Sub запрос, основанный рендеринга
    • есть только родительский сайт в Интернете, по требованию времени выполнения блоков содержимого из внутренний URL-адрес для дочернего сайта
    • Слабое связывание с точки зрения содержания, но сильной связи в терминах URLs
    • многие дочерние сайты могут втягиваться и не связаны друг с другом
    • родитель/ребенок сайты могут быть освобождены независимо

Клиентская состав

  • IFrames
    • действительно текстовая, так легко реализовать
    • имеет куча действительно сильных вещей, с которыми можно разобраться в css и jav ascript между рамой и родителем
    • Обычно рассматриваются разработчиками как плохая идея (мнения)
    • сцепка только URL-сайты могут быть освобождены independantly
  • Ajax содержания
    • сделать ajax-запрос для компонентов с других сайтов при загрузке страницы
    • Увеличивает время загрузки страницы и дает мерцание ui в качестве битов в
    • Довольно легко для i mplement и управлять
    • Муфта только URL-сайты могут быть освобождены independantly
0

Вы можете использовать Area в своем приложении, iFrame или просто открыть новую вкладку браузера для вашего дочернего приложения.

Если вы хотите включить проект в DLL, вы можете скомпилировать все представления в dll и ссылаться на него с помощью своего родительского приложения, this веб-сайт объясняет, как это можно сделать.

+0

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

+0

Тогда я бы предложил использовать DLL или iFrame. –

0

Я бы порекомендовал вам использовать способ создания пустого макета дочернего приложения и отнести его в div вашего родительского приложения с помощью JQuery. IFrame должен оставаться в прошлом.

Смежные вопросы