Как я могу преобразовать не-CMS веб-приложение в приложение, управляемое Sitefinity?
Я нахожусь в процессе преобразования веб-приложения, которое было в игре в течение некоторого времени, в управляемый сайт Sitefinity 4. Существует множество документов о том, как использовать программное обеспечение для создания нового сайта, но я обнаружил очень мало, что описывает процесс перехода с non-cms на Sitefinity.
Поэтому, в частности, я хотел бы получить некоторые рекомендации по процессу преобразования из неуправляемого в управляемый. Я искал в Google и на форумах Sitefinity и т. Д., Но ничего не нашел, кроме как перейти с одной версии Sitefinity на другую - не то, что я пытаюсь сделать.
Любые ссылки на посещение веб-сайтов или чтение страниц документации были бы очень полезными.
3 ответа
Вы должны будете прикусить пулю и инвестировать больше ресурсов в начале вашего проекта и ничего не выпускать в течение некоторого периода времени. Вы не сможете управлять своим автомобилем без основных компонентов. Тот же принцип применяется здесь.
Какими бы ни были ваши требования, вам придется либо взламывать CMS, а потом исправлять взломы, либо делать это правильно с самого начала.
- Посмотрите на свой существующий сайт и разбейте его на более мелкие куски
- Обратитесь к документации / партнерам / фрилансерам Sitefinity о том, как ваш существующий контент может быть перенесен на платформу Sitefinity.
- Задача миграции и начать реализацию
Это очень грубый ориентир, но ваши требования тоже.
Подводя итог, нет быстрого способа. Вы должны будете сделать это правильно с самого начала, или позже инвестировать больше ресурсов в исправление ошибок / хаков.
Если у нас есть Sitefinity в корне приложения, мы не можем, согласно Sitefinity, иметь страницы, не управляемые SF
Это не совсем правильно. Sitefinity позволяет вам добавлять "внешние страницы", что означает, что вы можете создавать оды в вашей карте сайта, которые хотели бы для внешних страниц. Таким образом, ваша навигация в Sitefinity будет показывать полную структуру страницы веб-сайта, в то время как некоторые из страниц в этой структуре будут фактически ссылаться на внешние.
Было бы очень легко и быстро создать программную структуру вашей страницы.
На самом деле это довольно просто достичь. Sitefinity - полностью динамическая CMS (имеется в виду, без реальных файлов). Реализация использует RoutingEngine и VirtualPathProvider для достижения этой цели. В действительности это означает, что у вас есть две надежные и стандартные точки расширения для разделения сайта на "управляемую часть sitefinity" и "настраиваемую управляемую часть".
Таким образом, очень простой способ сделать это - просто зарегистрировать маршрут (подробнее здесь: маршрутизация ASP.NET) перед SitefinityPageRoute, так как SitefinityPageRoute выдает 404, если не может найти страницу.
Итак, допустим, что вы зарегистрировали маршрут "~/mystuff" перед SitefinityPageRoute, все запросы, начинающиеся с "~/mystuff", сначала будут направлены в ваш RouteHandler, где вы можете решить обработать их (написать в ответ http) или ничего не делать, и пусть это свалилось на маршруты Sitefinity.
Конечно, есть и другой способ реализовать пользовательский VirtualPathProvider, однако это может быть излишним, если вы просто хотите, чтобы некоторые страницы обрабатывались по-другому.
Несмотря на это, очевидно, что страницы, не обработанные Sitefinity, не будут обрабатываться Sitefinity:) (так что, без редактора страниц, без рабочих процессов, без переводов, без виджетов, без шаблонов, без тем).