Sitecore Helix 放置数据源模板的位置

Sitecore Helix where to put datasource templates

我正在创建一个具有 AlertDataSource 模板和 Alerts 文件夹的基本警报功能。根据 Helix,我应该把它放在哪里,在项目层还是功能层?

在您创建功能时,AlertDataSource 模板必须与您的功能一起驻留。否则您的代码将无法访问其中的任何数据(因为它不知道它的存在)。

另一方面,您的文件夹是另一回事。如果您的功能不需要知道数据源项目的位置,您可能会争辩说它可以驻留在项目层中,只是为了组织项目中的数据等级。但是您也可以决定该功能需要组织您的数据(可能是数据源位置左右),在这种情况下,它也应该在功能中。

理论上,您应该在您的功能中使用界面(基本)模板,在您的项目中使用派生模板 - 但这是理论。对于页面模板,这是绝对正确的。对于数据源项目,我看到人们很实际,但并没有这样做(也因为并非 Sitecore 中的所有内容都能很好地处理基本模板)。但是你的评论是对的 - 理论上你需要有基本模板,其中包含你的功能中的字段和项目层中的(空)派生模板。