C# 玻璃贴图器渲染图像数据属性

C# 玻璃贴图器渲染图像数据属性,c#,sitecore,glass-mapper,C#,Sitecore,Glass Mapper,我正在尝试使用RenderImage渲染图像字段。我需要图像中的一些数据属性,但我似乎不知道如何实现它。我试过了,但没用 @RenderImage(image, x => x.Image, new RenderingParameters("data-protect=true"), isEditable: true) 谢谢像这样试试: @RenderImage(image, x => x.Image, new ImageParameters { Width = 100}, is

我正在尝试使用RenderImage渲染图像字段。我需要图像中的一些数据属性,但我似乎不知道如何实现它。我试过了,但没用

@RenderImage(image, x => x.Image, new RenderingParameters("data-protect=true"), isEditable: true)   
谢谢

像这样试试:

@RenderImage(image, x => x.Image, new ImageParameters { Width = 100}, isEditable: true)
对于最新版本的Glass,唯一可能的解决方案是

@RenderImage(image, x => x.Image, new { Width = 100}, isEditable: true)

此外,您还可以查看-

,尽管上面的答案会起作用,但我将在将来删除ImageParameters支持,转而使用匿名类型支持:

@RenderImage(image, x => x.Image, new { Width = 100}, isEditable: true)
这种更改的原因是,拥有像ImageParameters这样的强类型类非常有限。匿名类型也是其他框架实现这一点的常用方法,因此它适合其他所有人的工作

更新以包括数据属性的呈现:

@RenderImage(image, x => x.Image, new { data_protect = "true"}, isEditable: true)

我已经编辑了我的问题。数据保护是一个自定义属性。我怎样才能让它显示出来?@Gabbar我认为如果不创建一个新类而不是从AbstractParameters扩展的话,这是不可能的。您可以在此处检查默认的ImageParameters。只需使用所需的数据实现自定义类。另一个选项是手动呈现图像(使用src属性),并仅在页面编辑器模式下将其显示为可编辑。我将尝试两种方法。@tahatmat更新了!:)问题在于数据保护,我一直无法投入工作。因此,如果您可以添加对连字符命名属性的支持,那就太好了。Gabbar-最新的夜间发行版已经解决了这个问题。您可以使用“数据id”以与MVC相同的方式获取“数据id”。