5

如何从我们拥有的 URL 中检索 Sitecore 媒体项目?

URL 是动态 URL,例如/~/media/14BDED00E4D64DFD8F74019AED4D74EB.ashx.

这是在您在富文本字段中添加项目时生成的。

4

2 回答 2

10

您可以使用以下代码:

DynamicLink dynamicLink;
if (!DynamicLink.TryParse("/~/media/14BDED00E4D64DFD8F74019AED4D74EB.ashx", out dynamicLink))
    return;
MediaItem mediaItem = Sitecore.Context.Database.GetItem(dynamicLink.ItemId, dynamicLink.Language ?? Sitecore.Context.Language);
于 2013-06-26T08:09:50.070 回答
3

在富文本字段中添加项目时,您可以使用 FieldRenderer 呈现输出 - Sitecore 将自动创建正确的 URL。这样,您甚至不必担心 URL。

FieldRenderer 控件可以这样使用:

<sc:FieldRenderer ID="renderer" runat="server" FieldName="fieldname" />

或者,如果您使用 XSLT:

<sc:text field="fieldname" />

在代码隐藏中,您可以执行类似的操作

FieldRenderer.Render(Sitecore.Context.Item, fieldname);
于 2013-06-26T08:12:14.907 回答