我正在创建一个具有AlertDataSource模板和警报文件夹的基本警报功能。根据Helix,我应该将其放在项目或功能层中?
在创建功能时,AlertDataSource模板必须驻留在您的功能中。否则,您的代码将无法从中访问任何数据(因为它不知道它的存在(。
另一方面,您的文件夹是另一件事。如果您的功能不需要了解数据源项目的位置,则可以说它可以驻留在项目层中,只是为了在项目级别上组织您的数据。但是您还可以决定该功能需要组织数据(可能适用于数据源地点左右(,在这种情况下,它也应该在该功能中。
从理论上讲,您应该在项目中的功能和派生模板中使用界面(基础(模板 - 但这就是理论。对于页面模板,这绝对是正确的。对于DataSource项目,我已经看到人们是实用的,而不是这样做的(还因为Sitecore中的所有内容都可以很好地处理基本模板(。但是您在评论中是正确的 - 从理论上讲,您需要具有功能中的字段和(空(派生模板中的基本模板。