Пользователь не может выбрать SVG в Episerver CMS (поддерживаются другие типы изображений) - PullRequest
0 голосов
/ 27 мая 2020

Я не могу получить изображения SVG для отображения в поле «Выбрать изображение», когда пользователь CMS нажимает кнопку с эллипсом для свойства изображения на странице или в блоке в Episerver. (Episerver 10.10.5.0)

Изображения SVG загружаются нормально, и они отображаются на панели ресурсов вместе с другими загруженными изображениями. Но когда пользователь пытается выбрать изображение, отображаются только другие типы изображений, которые находятся в той же папке.

Я попытался добавить поддержку через модель (Models \ Media \ VectorImageFile.cs), как это предлагается в сообщение в блоге здесь . Когда это не сработало, я удалил VectorImageFile.cs и попытался добавить «svg» в список расширений изображений в Models \ Media \ ImageFile.cs:

[ContentType(DisplayName = "ImageFile", GUID = "88284fbf-9d34-469b-a259-716f8aac5529", Description = "")]
[MediaDescriptor(ExtensionString = "jpg,jpeg,jpe,ico,gif,bmp,png,svg")]

Обе эти попытки были скомпилированы без проблем, но не сделал изображения SVG доступными для пользователя при выборе файла изображения для свойства изображения страницы или блока.

Надеюсь, я предоставил достаточно информации. Я новичок из Episerver (и C# noob, tbh). Будем признательны за любые рекомендации!

1 Ответ

0 голосов
/ 29 мая 2020

ОК. Вот ответы, которые я нашел на свой вопрос.

  • Поместите этот код в отдельный файл и убедитесь, что он правильно указан / включен в проект.
  • Как только он появится, у вас будет определенный тип «VectorImageFile», но 1) пользователи больше не смогут загружать файлы SVG и 2) пользователи по-прежнему не смогут выбирать изображения SVG из редактора блоков с Установлено свойство UIHint.Image.
  • Эти ребята задокументировали проблему / раздражение №1 выше. Измените наследование "VectorImageFile" с ImageData на MediaData. Теперь пользователи могут снова загружать изображения SVG. Но они по-прежнему не могут их выбрать.
  • Итак, удалите UIHint.Image из свойства, позволяя пользователям выбирать любой медиа или тип контента, который они хотят. Затем возьмите ContentURL из ContentReference, назначьте его строковой переменной и вызовите эту строковую переменную как sr c тега img в представлении.

What. А. Боль.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...