Glass Mapper, Генерация кода TDS и поле Rich Text в Sitecore

Использование Glass.Mapper версии 3.0.13.25. Использование TDS 5.0.0.23 Генерация кода (glassv3header.tt и glassv3item.tt).

У меня есть новый предмет, который я пытаюсь добавить в Sitecore. Я заполняю объект Product, созданный с помощью TDS'Generation Code...

Product createdProduct = service.Create(DestinationFolder, newProduct);

Я получаю следующую ошибку при попытке запустить мой код...

Невозможно сохранить данные из расширенного текстового поля, если они не являются необработанными. Установите свойство параметра SitecoreFieldAttribute в SitecoreFieldSettings.RichTextRaw для свойства Full_Description для типа Mizuno.Data.Domain.Product.

Глядя на код Glass Mapper, похоже, что мне нужно установить какой-то config.Setting для SitecoreFieldSettings.RichTextRaw, но я не уверен, что / где / как я делаю это, используя код, сгенерированный TDS...

Любое понимание этого было бы полезно.

-Sarkis-

2 ответа

Я не думаю, что это возможно с TDS, если вы не измените стандартный шаблон TT, а затем используете пользовательские данные в TDS. Это может быть много работы.

Возможно, вам лучше подклассифицировать исходную модель, а затем добавить другой атрибут, я не проверял это, но он должен работать:

public class ProductWrite : Mizuno.Data.Domain.Product {

    [SitecoreField(Settings = SitecoreFieldSettings.RichTextRaw)]
    public override string Full_Description { get; set; }

} 

Дайте мне знать, если это работает.

Эй, уже немного поздно, но я нашел решение для этого. Итак, сначала вы должны отключить генерацию кода для этого элемента. Перейдите в проект TDS правой кнопкой мыши, затем Свойства. Есть поле под названием "Шаблон генерации кода", которое установлено в None, а в вашем классе это свойство должно быть:

[SitecoreField("FieldName", Setting = SitecoreFieldSettings.RichTextRaw)]
public virtual string FieldName { get; set; }

Надеюсь, поможет

Другие вопросы по тегам