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

当我将html文件存储在服务器上时,我已经可以正常工作了。我将使用“文件上传”将文件上传到媒体库,然后使用以下代码读取内容:

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


但是,我现在想执行此操作而不将文件存储在服务器上,而只将它们存储在媒体库中。反正我能做到这一点吗?

到目前为止,我很难找到有关该主题的信息。

谢谢。

最佳答案

据我了解,您想读取存储在媒体库中的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();
}

关于c# - 在Sitecore中获取媒体库项目的内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33173335/

10-16 09:01