gpt4 book ai didi

c# - 在 Episerver CMS 中,如何创建一个属性来显示上传的图像或 PDF Assets 的源 URL(在 Episerver 编辑器界面中)?

转载 作者:行者123 更新时间:2023-11-30 21:35:42 25 4
gpt4 key购买 nike

恼人的是,Episerver 中的 MediaData 类没有任何基本属性,如源 URL、替代文本等。我​​正在尝试实现一个类以继承自 MediaData 并为特定类型的媒体 Assets 提供特定属性(本例中为 PDF)。

我已尝试手动设置属性值并覆盖 SetDefaultValues 事件,但均无济于事。虽然,根据我用于“SrcUrl”的类型,我确实看到了一个文本框或一个 URL 选择器,但是它是空白的,并且从不填充上传的 PDF 的 URL。

[ContentType(
DisplayName = "PDF File",
GUID = "xxxxxxx-xxxx-xxxxxx-xxxx-xxxxxxxxxxx")]
[MediaDescriptor(ExtensionString = "pdf")]
public class PdfFile : MediaData
{
[UIHint(UIHint.MediaFile)]
[Display(Name = "PDF URL",
Description = "Link to view or reference PDF",
GroupName = SystemTabNames.Content,
Order = 10)]
public virtual string SrcUrl
{
get { return UrlResolver.Current.GetUrl(this.ContentLink); }
set { value = UrlResolver.Current.GetUrl(this.ContentLink); }
}

// Sets the default property values
public override void SetDefaultValues(ContentType contentType)
{
base.SetDefaultValues(contentType);

this.SrcUrl = UrlResolver.Current.GetUrl(this.ContentLink) ?? "Default";
}
}

PDF URL property rendering blank in Episerver editor interface when viewing a PDF

****免责声明:我是 Episerver CMS 的新手,可能会遗漏一些非常简单的东西(如果合适的话,可以被羞辱)。*

最佳答案

我不太确定您需要完成什么,但可能应该注意的是,在编辑 MediaData 内容时,可以通过单击 Publish 按钮获得其 URL (注意下载此文件链接):

Episerver publish button

编辑:另一个建议是为 MediaFile UI 提示创建自定义编辑器 dijit(使用 Dojo)。这将允许您显示 URL,而无需添加额外的属性。

关于c# - 在 Episerver CMS 中,如何创建一个属性来显示上传的图像或 PDF Assets 的源 URL(在 Episerver 编辑器界面中)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48994109/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com