在Sitecore中获取媒体库项目的内容

本文关键字:项目 媒体库 Sitecore 获取 | 更新日期: 2023-09-27 18:17:57

使用Sitecore 7.5,我试图在媒体库中存储几个html文件。然后在我的子布局代码背后,我试图抓住这些html文件的内部内容。

当我在服务器上存储html文件时,我有这个工作。我将使用'upload as file'将文件上传到Media Library,然后使用以下代码读取内容:

string filename = htmlMediaItem.Fields["File Path"].ToString();
string path = Server.MapPath(filename);
string content = System.IO.File.ReadAllText(path);

然而,我现在想这样做,而不是将文件存储在服务器上,而只是将它们存储在媒体库中。我能帮你吗?

到目前为止,我很难找到关于这个主题的信息。

谢谢。

在Sitecore中获取媒体库项目的内容

根据我的理解,您想读取存储在Media Library中的html文件的内容。

Sitecore.Data.Items.Item sampleItem = Sitecore.Context.Database.GetItem("/sitecore/media library/Files/yourhtmlfile");
Sitecore.Data.Items.Item sampleMedia = new Sitecore.Data.Items.MediaItem(sampleItem);
using(var reader = new StreamReader(MediaManager.GetMedia(sampleMedia).GetStream().Stream))
{
    string text = reader.ReadToEnd();
}