2012-04-17 71 views
5

快速的問題。我正在構建一個模板構建塊(TBB),它從組件的父文件夾中檢索元數據模式值。例如,此文件夾中列出的所有組件將共享相同的標題,但具有不同的內容。所以,我創建了一個模式並將其附加到父文件夾。這樣,如果我想更改所有組件的標題,則只需更改文件夾中的元數據值即可。Tridion 2009 - 檢索組件的父文件夾TCM

我有這個與父文件夾TCM硬編碼工作,但是,我需要動態抓住它。有誰知道如何抓住父文件夾的TCM?

感謝您的協助。

+1

「所有在此文件夾中列出的組件將共享相同的標題」每個組件的標題必須是它的文件夾中是唯一的,這樣聽起來不太可能。通常的用法是在標題的公共部分前綴相似的組件,例如, 「產品A - 說明」,「產品A - 規格」等。 – 2012-04-17 19:08:37

+0

由於您提到了TBB,我猜「標題」是指組件演示文稿中的某些標記? – 2012-04-18 00:56:13

回答

7

RepositoryLocalObjects都有一個「.OrganizationalItem」屬性,它將返回對象的容器。

東西沿着這些路線應該讓你開始:

Component component = (Component)engine.GetObject(package.GetByName(Package.ComponentName)); 
Folder parent = (Folder)component.OrganizationalItem; 
ItemFields folderFields = new ItemFields(parent.Metadata, parent.MetadataSchema); 
+0

Woot!完美的是,第一條線是關鍵。感謝您的幫助。這很好。 :) – Helldozer 2012-04-17 18:48:44