我应该如何在Sitecore中存储项目的一些自定义属性?

我应该如何在Sitecore中存储项目的一些自定义属性?,sitecore,sitecore8,Sitecore,Sitecore8,我正在将数千种产品从XML提要导入Sitecore。因此,我为该产品创建了一个模板,其中包含大约20个字段,如标识、名称、价格等等。 但是,在XML中,产品可以有一些自定义属性,如下所示: <custom-attribute name="AC_Information_1_Name" dt:dt="string" xml:lang="nl-NL">PDF</custom-attribute> PDF 首先,我创建了一个新模板,用于保存这些字段,并将每个自定义属性的Sit

我正在将数千种产品从XML提要导入Sitecore。因此,我为该产品创建了一个模板,其中包含大约20个字段,如
标识
名称
价格
等等。 但是,在XML中,产品可以有一些自定义属性,如下所示:

<custom-attribute name="AC_Information_1_Name" dt:dt="string" xml:lang="nl-NL">PDF</custom-attribute>
PDF
首先,我创建了一个新模板,用于保存这些字段,并将每个自定义属性的Sitecore项存储在文件夹中,并将它们链接到产品。但这使得导入速度非常慢,因为包含自定义属性项的文件夹有超过100000个属性项,每次需要保存另一个属性项时,它都会查看所有现有的属性项,以检查它们是否重复。 所以我想我需要改变我如何保存这些的整个结构。 另一个想法是以某种方式将它们直接保存在产品中,但是名称-值列表是不够的,因为还有需要保存的
数据类型
语言

您知道任何可以保存所有值的数据类型吗?或者其他一些想法?

一些建议:

  • 通过对索引进行查找来提高性能
  • 看看如何为自定义属性使用bucket,这将自动为项目创建隐藏的树结构,以优化Sitecore性能
  • 考虑将其作为自定义字段类型存储在产品上(可能将XML存储为原始值),这与表示细节的工作方式非常相似。您可以在此基础上构建一个UI,以按照自己的意愿显示数据。然而,这将意味着重复的数据,但导入将是高效的
  • 一些建议:

  • 通过对索引进行查找来提高性能
  • 看看如何为自定义属性使用bucket,这将自动为项目创建隐藏的树结构,以优化Sitecore性能
  • 考虑将其作为自定义字段类型存储在产品上(可能将XML存储为原始值),这与表示细节的工作方式非常相似。您可以在此基础上构建一个UI,以按照自己的意愿显示数据。然而,这将意味着重复的数据,但导入将是高效的
  • 建议:

    1-使用(名称、值、语言、类型)为自定义属性创建模板,并将xml的自定义属性添加为产品的子项。您不需要进行查找,因为属性应该只针对产品,并且将它们放在常规文件夹位置不会增加任何价值。所以你的树看起来像

    产品1>属性1 |属性2 |属性n
    产品2>属性1 |

    产品N

    2-为xml属性创建自定义字段类型,以便您的字段应该有4个输入框作为一个字段。例如,您的产品模板如下所示

    标识
    [输入框]

    价格
    [输入框]

    自定义属性
    名称|值|类型| Lang
    [输入框]|[输入框]|[输入框]|[输入框]

    这种方法需要更多的时间,您可以查看sdn文档以创建自定义字段类型

    谢谢
    Naveed.

    建议:

    1-使用(名称、值、语言、类型)为自定义属性创建模板,并将xml的自定义属性添加为产品的子项。您不需要进行查找,因为属性应该只针对产品,并且将它们放在常规文件夹位置不会增加任何价值。所以你的树看起来像

    产品1>属性1 |属性2 |属性n
    产品2>属性1 |

    产品N

    2-为xml属性创建自定义字段类型,以便您的字段应该有4个输入框作为一个字段。例如,您的产品模板如下所示

    标识
    [输入框]

    价格
    [输入框]

    自定义属性
    名称|值|类型| Lang
    [输入框]|[输入框]|[输入框]|[输入框]

    这种方法需要更多的时间,您可以查看sdn文档以创建自定义字段类型

    谢谢

    Naveed.

    看看这篇文章,它似乎和你的文章一样。为什么要对自定义属性进行回购?是否要求您可以比较或强制执行产品之间的关系?@RvanDalen我不希望有重复项您可以在一个模板中拥有类型属性和值,并将它们存储在产品下,而不是拥有单个属性类型列表。但这是@IanGraham给你的链接中给出的解决方案之一。我认为那篇文章给了你很多选择。看看这篇文章,它似乎和你的文章一样。为什么要对自定义属性进行回购?是否要求您可以比较或强制执行产品之间的关系?@RvanDalen我不希望有重复项您可以在一个模板中拥有类型属性和值,并将它们存储在产品下,而不是拥有单个属性类型列表。但这是@IanGraham给你的链接中给出的解决方案之一。我认为那个帖子给了你很多选择。