用户无法在 Episerver CMS 中选择 SVG(支持其他图像类型)



当 CMS 用户在 Episerver 中单击页面或块上的图像属性的省略号按钮时,我无法让 SVG 图像显示在"选择图像"框中。(外围服务器 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# 菜鸟,tbh(。任何指导将不胜感激!

好的。以下是我找到的问题的答案。

  • 将此代码放在单独的文件中,并确保它正确 引用/包含在项目中。
  • 一旦它在那里,您将有一个定义的"矢量图像文件"类型,但 1( 用户将无法再上传 SVG 文件,2( 用户仍然无法从设置了 UIHint.Image 属性的块编辑器中选择 SVG 图像。
  • 这些人记录了上面的问题/烦恼#1。将"VectorImageFile"的继承从 ImageData 更改为 MediaData。现在用户可以再次上传 SVG 图像。但他们仍然无法选择它们。
  • 因此,从属性中删除UIHint.Image,允许用户选择他们想要的任何媒体或内容类型。然后,从 ContentReference 中获取 ContentURL,将其分配给字符串变量,并在视图中调用该字符串变量作为 img 标记的 src。

什么。 A.疼痛。

最新更新