我支持外部顾问创建的现有 Sitecore 数据提供程序。它在大多数情况下都有效,但是在填充我需要排除故障的字段时似乎存在错误。
我正在尝试确定调试的最佳方式。查看/编辑内容项时是否执行数据提供程序?或者内容项何时发布?或两者?
另外,调试数据提供者的最佳实践是什么?创建单元测试是否可行/可能?
这可能相关也可能不相关,但是这个特定的数据提供者构建在 Spring 框架之上,这意味着这个提供者将填充的 Sitecore 项目和字段的巨大配置文件。
Sitecore 中的每个“数据库”(master/core/web)实际上是一个开放通道,任何数量的数据提供者都可以订阅和响应。当 Sitecore 中发生任何数据库请求时,所有已实现该请求方法的数据提供者都将触发并有机会做出响应。这些请求方法的示例是:
GetParentID
GetItemVersions
GetItemFields
SaveItem
您当然可以像调试 Sitecore 中的任何其他代码一样调试这些数据提供程序(附加到 IIS 工作进程),它是否触发取决于此数据提供程序实现的方法。您可能会发现该方法没有触发,因为该项目现在已缓存,为确保不会发生这种情况,只需重置应用程序池,最好的方法是点击 web.config 或重建项目。
希望对您有所帮助,如果您正在寻找另一个示例,您也可以尝试拆开我去年编写的数据提供程序。