27.03.2012 || Раздел: || Модули KooBoo Чтобы создать еще один модуль внутри одной области (area), можно воспользоваться простым копированием директории примерного модуля (SampleModule) в папке Areas: Но если Вы попытаетесь откомпилировать проект (Build), то получите следующие ошибки:
Это означает, что в Вашем проекте произошел конфликт имен. Можно конечно переименовать их, но более оптимальным решением будет использовать различные пространства имен для разных модулей. Пример, где используются модули с различными namespaces, Вы можете скачать здесь (альтернативная ссылка). Инструкция по установке данного примера: 1. Создайте новый проект модуля на основе шаблона "Kooboo.CMS.ModuleArea.vsi" (который можно скачать здесь). 2. Создайте папку "NewModule" внутри поддиректории проекта "Areas". 3. Извлеките все файлы из архива в папку, созданную на предыдущем шаге. 4. Включите все извлеченные файлы в проект, созданный на первом шаге. Solution Exporer в Visual Studio 2010 будет выглядеть примерно так: Запуск примера: 1. Запустите проект (меню "Debug/Start") без использования отладки (debugging) или нажмите Ctrl-F5. Если возникнет исключение "Storage scopes cannot be created when _AppStart is executing" просто обновите страницу. В результате будет запущен экземпляр сайта KooBoo. 2. Перейдите на административную страницу и осуществите вход (log in). 3. Щелкните "SampleSite" для перехода в административную консоль. 4. В блоке меню "Site Manager" должен появиться пункт "NewModule": Также при переходе на страницу модулей по ссылке "Modules" Вы увидите элемент "NewModule": Некоторые рекомендации: 1. Хорошей практикой является использование такой же структуры пространства имен (namespaces) как и структура директорий в сочетании с именем проекта. Например, в проекте под названием "MyProject" для файла "/Site/Controllers/AdminController.cs" желательно использовать следующее пространство имен: MyProject.Site.Controllers. Это упростит поиск файла, если Вы знаете соответствующий ему namespace. 2. Новый модуль с другим именем может быть создан из файлов архива примера путем поиска и замены пространства имен в контенте всех файлов. © PetrAlexeev, Элла С. (соавтор: Ella Sea) Основано на материалах официального форума KooBoo CMS См. также:
Похожие статьи |
|