2014-12-01 2 views
0

Я пытаюсь получить команду, работающую в новом экземпляре Sitecore 7.2. Команда, которую я добавил, живет в другой сборке, чем основной проект для этого веб-приложения. Я добавил полный путь к файлу для этой команды вместе с именем скомпилированной сборки в файле App_Config/Commands.config.Sitecore 7.2 Конфигурация команд

В Sitecore я добавил шаблон команды в папке с указанными ветками/пользователем и ввел имя команды из Commands.config в поле Command. Затем я добавил команду в качестве опции вставки в соответствующий элемент в Sitecore.

Когда я вхожу в систему как администратор и нажимаю ссылку командной строки на вкладке «Главная» в верхнем меню, ничего не происходит. Ошибка не генерируется, и всплывающее окно не появляется - просто ничего.

После многократного конфигурирования команд в более ранних версиях Sitecore я не могу представить, что мне не хватает ... Единственное отличие на этот раз состоит в том, что файл для команды находится в другой сборке. Я пропустил какой-то шаг, который необходим, чтобы это работало? Что-то изменилось в Sitecore 7.2?

+0

Можете ли вы поделиться тем, как у вас есть команда, определенная в ваших командах .config? –

+0

sean

+0

, чтобы исключить очевидную вашу DLL с именем Common.Web.dll или Common. Web.Sitecore.dll? Просто хочу проверить базовое пространство имен. –

ответ

0

Похоже, что была ошибка в ссылке на пространство имен. Как только я обновил это, код запустился. Удручающая вещь заключалась в том, что Sitecore не вызывал ошибку. Он просто не отвечал, вообще.

-1

У меня была похожая ситуация на днях. У меня было решение Visual Studio только с одним проектом Class Library и одним классом C# в проекте. Я написал код в этом классе, построил решение и переместил DLL в папку bin в Sitecore. Я попытался запустить функцию в Sitecore, и ничего не произошло. Я подтвердил, что я правильно ссылаюсь на DLL. Затем я использовал отладчик в моей Visual Studio для присоединения к моему процессу и, конечно же, параметры метода, которые должен был установить Sitecore в моей сигнатуре метода, не были установлены.

После того как я попробовал много разных вещей, я решил добавить в мое решение веб-приложение. Затем я переместил код из библиотеки классов в веб-приложение и обновил Sitecore, чтобы ссылаться на DLL веб-приложения вместо DLL библиотеки классов. Внезапно были установлены параметры моего метода, и остальная часть моего кода работала так, как ожидалось!

Поэтому мое предложение: если у вас есть код на в Class Library прямо сейчас, переместить его в проект Web Application и посмотреть, если это помогает.

+0

Так что Sitecore предполагает, что файл cs, содержащий код команды, живет в том же проекте, что и файл Commands.config? Независимо от того, действительно ли это так, мне кажется, что я вижу вид ошибки. – sean

+0

Кажется, что Sitecore хочет, чтобы ваш код появился из DLL в проекте веб-приложения, а не в проекте библиотеки классов. Кажется очень странным, но это то, что я наблюдал до сих пор. – DougCouto

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