Sitecore数据提供程序何时执行?

时间:2011-01-20 17:26:27

标签: sitecore sitecore6

我正在支持外部顾问创建的现有Sitecore数据提供程序。它在大多数情况下都有效,但在填充我需要进行故障排除的字段时似乎存在一个错误。

我正在尝试确定调试的最佳方法。查看/编辑内容项时是否执行了数据提供程序?或者内容项目发布时?或两者兼而有之?

此外,调试数据提供程序的最佳做法是什么?是否可行/可能创建单元测试?

这可能是相关的,也可能不相关,但是这个特定的数据提供程序是建立在Spring Framework之上的,这意味着一个巨大的配置文件是该提供程序将填充的Sitecore项目和字段。

1 个答案:

答案 0 :(得分:3)

Sitecore中的每个“数据库”(主/核/ Web)实际上是一个开放的通道,任何数量的数据提供者都可以订阅和响应。当Sitecore中发生任何数据库请求时,所有已实现该请求方法的数据提供者都将触发并有机会响应。这些请求方法的示例如下:

  • GetParentID
  • GetItemVersions
  • GetItemFields
  • SaveItem

您可以像调试Sitecore中的任何其他代码一样调试这些数据提供程序(附加到IIS工作进程),无论它是否触发,都取决于此数据提供程序实现的方法。您可能会发现一个方法是该方法没有触发,因为该项目现在已缓存,以确保不会发生这种情况,只需重置应用程序池,最好的方法是点击web.config或重建项目。 / p>

希望有所帮助,如果您正在寻找another example,您还可以尝试拆分我去年写的数据提供商。