1

我有一个包含以下部分的模板:

Section A
   Title
   Name
Section B
   Title 
   Name

在 Sitecore 上看起来不错。但是,当 TDS Glass 映射器生成代码时,它会生成两次 Title 和 name。

想知道当 glass mapper 生成代码时是否可以在每个字段之前添加部分名称。

如果您问我为什么,这是为了避免 TDS 项目的 Windows 文件系统出现 248 个字符长度错误,因为我已经这样做了。

Section A
       Section A Title
       Section A Name
Section B
       Section B Title 
       Section B Name

任何帮助都会很棒。

谢谢。

4

1 回答 1

3

在同一个模板中多次定义具有相同名称的字段通常不是一个好习惯。尽管 Sitecore 允许您这样做,并且能够通过字段 ID 单独识别字段 - 大多数代码使用字段名称或生成的代码来执行此操作。按名称引用字段时,它将失败。

您有 2 个选项。

选项 1 更好的做法是为名称添加前缀或提出唯一的命名约定,就像您在示例中所做的那样

选项 2

作为替代方案,您可以在生成代码时修改 T4 模板以在字段名称前面加上节名称。这将允许代码编译。但取决于 Glass 如何映射字段(通常是字段名称,而不是ID) - 它仍然会导致问题,因为 Sitecore 不知道要使用哪个字段。

我会选择选项 1

于 2015-11-18T02:17:43.897 回答