Đây là trên Tridion 2011 SP1.Tridion: Lỗi khi đặt lược đồ siêu dữ liệu của trang trong hệ thống sự kiện
Tôi đang sử dụng sự kiện lưu thành phần trong hệ thống sự kiện Tridion để tạo trang tương ứng và kết hợp một số siêu dữ liệu với trang đó. Khi xác định một lược đồ, tôi nhận được các bản ghi sự kiện chỉ ra rằng UUID của lược đồ không thể được tìm thấy.
UUID có lỗi là lược đồ siêu dữ liệu tôi muốn sử dụng và tôi cũng đang sử dụng TcmUri cục bộ cho lược đồ siêu dữ liệu. Tôi đang ở một chút mất mát vào lúc này.
.NET và kết quả là lỗi dưới:
Mã
public static TcmUri CreatePage(TcmUri parentSgId, Component component, TcmUri componentTemplateUri, TcmUri metaDataSchemaUri = null)
{
Logging.Debug("Attempting to create page in " + parentSgId.ToString());
Page page = new Page(component.Session, parentSgId);
page.Title = component.Title;
page.FileName = component.Title;
// Add a metadata schema
if (metaDataSchemaUri != null)
{
TcmUri localMetaDataSchemaUri = TransformTcmUri(metaDataSchemaUri, parentSgId);
page.MetadataSchema = (Schema)page.Session.GetObject(localMetaDataSchemaUri);
}
// Add the CP
TcmUri localComponentUri = Helpers.TransformTcmUri(component.Id, parentSgId);
TcmUri localComponentTemplateUri = Helpers.TransformTcmUri(componentTemplateUri, parentSgId);
page.ComponentPresentations.Add(new ComponentPresentation(new Component(localComponentUri, component.Session), new ComponentTemplate(localComponentTemplateUri, component.Session)));
try
{
page.Save(true);
Logging.Debug("Created page successfully " + page.Id.ToString());
return page.Id;
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
}
Lỗi
Unable to find uuid:C42EE4FC-D2A2-49F5-92C7-BF6DCB014343:Metadata.
Component: Tridion.ContentManager Errorcode: 0 User: EMAKINA\MTSUser
StackTrace Information Details: at
Bair.Tridion.Events.Utilities.Helpers.CreatePage(TcmUri parentSgId,
Component component, TcmUri componentTemplateUri, TcmUri
metaDataSchemaUri) [...]
tôi đã cố gắng này cũng có, nhưng với kết quả báo lỗi tương tự không may. –
Chết tiệt, bạn đã tìm ra nó trước khi tôi đăng giải pháp của mình ...:/ –
Xin lỗi. Cảm ơn rất nhiều vì đã đào sâu vào cái này. Tôi đập đầu vào nó một lúc và giải pháp vừa xuất hiện;) –