3
我需要将许多模板字段上的Shared属性设置为false。是否有一种简单的方法可以在代码不更改字段ID的情况下执行此操作?我写了下面的代码,但它似乎没有更新该属性。设置项目中所有模板的Sitecore字段共享
Sitecore.Data.Database masterDb = Sitecore.Configuration.Factory.GetDatabase("master");
using (new Sitecore.SecurityModel.SecurityDisabler())
{
try
{
var templates = TemplateManager.GetTemplates(masterDb);
foreach (var template in templates.Values)
{
if (template.FullName.StartsWith("FolderName"))
{
foreach (var field in template.GetFields(false))
{
TemplateManager.ChangeFieldSharing(field, TemplateFieldSharing.None, masterDb);
}
}
}
}
catch (Exception ex)
{
}
}
这看起来像一个坚实的解决方案。 +1 – Younes
看起来像...但它会引发FieldSharingChangedRemoteEvent?我不太确定。 –