2015-10-05 55 views
1

我正在將數以千計的XML Feed中的產品導入Sitecore。因此,我爲產品創建了一個模板,其中包含大約20個字段,如Identification,Name,Price等。 而且,在XML,一個產品可以有一些自定義屬性,看起來像這樣:我應該如何在Sitecore中存儲項目的一些自定義屬性?

<custom-attribute name="AC_Information_1_Name" dt:dt="string" xml:lang="nl-NL">PDF</custom-attribute> 

起初,我創建了將持有這些領域和存儲Sitecore的項目對於這些新模板自定義屬性「,並將它們鏈接到」產品「。但是這導致導入非常慢,因爲包含自定義屬性項目的文件夾有超過10萬個,每次必須保存另一個,它會查看所有現有項目以檢查它是否不重複。 所以我想我需要改變我如何保存這些東西的整個結構。 另一個想法是以某種方式將它們直接保存在產品中,但名稱值列表不夠用,因爲還有需要保存的DataTypeLanguage

你知道任何可以容納所有值的數據類型嗎?或者也許還有其他一些想法

+0

看看這篇文章,它似乎和你一樣。 http://stackoverflow.com/questions/28728127/where-could-i-store-custom-field-attributes-for-a-field-in-sitecore/28740870 –

+0

你爲什麼要爲自定義屬性做回購?是否需要您可以比較或強制執行產品之間的關係? – RvanDalen

+0

@RvanDalen我不想重複 –

回答

0

幾點建議:

  1. 增加做你查找對指數的表現。
  2. 查看爲您的自定義屬性使用存儲桶,該存儲桶會自動爲您的項目創建隱藏樹結構以優化Sitecore性能。
  3. 考慮將其作爲自定義字段類型(可能將XML存儲爲原始值)存儲在產品上,就像演示文稿細節的工作方式一樣。您可以在此基礎上構建一個UI,以顯示您想要的數據。這將意味着重複的數據,但是,導入會很高效。
0

建議:

1 - 創建與(名稱,價值,語言,類型)自定義屬性模板,並添加爲產品子項XML的自定義屬性。您不需要執行查找,因爲屬性只應用於產品,並且將它們放在通用文件夾位置中不會增加任何值。所以你的樹可能看起來像

產品1>屬性1 |屬性2 | .... |屬性n
產品2>屬性1 | ...
...
產品等級

2 - 創建的XML的屬性自定義字段類型,以便您的字段應該有4個輸入框的一個領域。例如,你的產品模板看起來就像

鑑定
[輸入框]

價格
[輸入框]

自定義屬性
名稱|值|類型| Lang
[輸入框] | [輸入框] | [輸入框] | [輸入框]

此方法需要更多時間,您可以查看sdn文檔以創建自定義字段類型。

謝謝
已過帳。

相關問題