Как я могу преобразовать не-CMS веб-приложение в приложение, управляемое Sitefinity?

Я нахожусь в процессе преобразования веб-приложения, которое было в игре в течение некоторого времени, в управляемый сайт Sitefinity 4. Существует множество документов о том, как использовать программное обеспечение для создания нового сайта, но я обнаружил очень мало, что описывает процесс перехода с non-cms на Sitefinity.

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

Любые ссылки на посещение веб-сайтов или чтение страниц документации были бы очень полезными.

3 ответа

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

Какими бы ни были ваши требования, вам придется либо взламывать CMS, а потом исправлять взломы, либо делать это правильно с самого начала.

  1. Посмотрите на свой существующий сайт и разбейте его на более мелкие куски
  2. Обратитесь к документации / партнерам / фрилансерам Sitefinity о том, как ваш существующий контент может быть перенесен на платформу Sitefinity.
  3. Задача миграции и начать реализацию

Это очень грубый ориентир, но ваши требования тоже.

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

Если у нас есть Sitefinity в корне приложения, мы не можем, согласно Sitefinity, иметь страницы, не управляемые SF

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

Было бы очень легко и быстро создать программную структуру вашей страницы.

На самом деле это довольно просто достичь. Sitefinity - полностью динамическая CMS (имеется в виду, без реальных файлов). Реализация использует RoutingEngine и VirtualPathProvider для достижения этой цели. В действительности это означает, что у вас есть две надежные и стандартные точки расширения для разделения сайта на "управляемую часть sitefinity" и "настраиваемую управляемую часть".

Таким образом, очень простой способ сделать это - просто зарегистрировать маршрут (подробнее здесь: маршрутизация ASP.NET) перед SitefinityPageRoute, так как SitefinityPageRoute выдает 404, если не может найти страницу.

Итак, допустим, что вы зарегистрировали маршрут "~/mystuff" перед SitefinityPageRoute, все запросы, начинающиеся с "~/mystuff", сначала будут направлены в ваш RouteHandler, где вы можете решить обработать их (написать в ответ http) или ничего не делать, и пусть это свалилось на маршруты Sitefinity.

Конечно, есть и другой способ реализовать пользовательский VirtualPathProvider, однако это может быть излишним, если вы просто хотите, чтобы некоторые страницы обрабатывались по-другому.

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

Другие вопросы по тегам