Когда выполняется поставщик данных Sitecore? - PullRequest
0 голосов
/ 20 января 2011

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

Я пытаюсь определить лучший способ отладки.Выполняется ли поставщик данных при просмотре / редактировании элемента контента?Или когда элемент контента опубликован?Или и то, и другое?

Кроме того, какова лучшая практика для отладки поставщика данных?Практически / возможно ли создавать модульные тесты?

Это может или не может иметь значение, но этот конкретный поставщик данных построен поверх Spring Framework, что означает гигантский конфигурационный файл элементов и полей Sitecore, которыеэтот провайдер будет заполняться.

1 Ответ

3 голосов
/ 21 января 2011

Каждая «база данных» (master / core / web) в Sitecore на самом деле является открытым каналом, на который может подписаться любое количество поставщиков данных и отвечать на них. Когда какой-либо запрос к базе данных происходит в Sitecore, все поставщики данных, которые внедрили этот метод запроса, сработают и получат возможность ответить. Примеры этих методов запроса:

  • GetParentID
  • GetItemVersions
  • GetItemFields
  • SaveItem

Вы, безусловно, можете отлаживать этих поставщиков данных, как и любой другой код в Sitecore (присоединить к рабочему процессу IIS), независимо от того, запускается он или нет, зависит от того, какие методы реализует этот поставщик данных. Одна вещь, которую вы можете обнаружить, это то, что метод не запускается, потому что элемент теперь кэшируется, чтобы убедиться, что этого не происходит, просто сбросьте пул приложений, лучший способ сделать это - нажать web.config или перестроить проект.

Надеюсь, это поможет, вы также можете попробовать разобрать поставщика данных, который я написал в прошлом году, если вы ищете другой пример .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...