Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否从Sitecore文件项获取流?(C#)_C#_File_Stream_Sitecore_Media - Fatal编程技术网

是否从Sitecore文件项获取流?(C#)

是否从Sitecore文件项获取流?(C#),c#,file,stream,sitecore,media,C#,File,Stream,Sitecore,Media,我的一个项目上有一个文件字段。我正在尝试实现上传页面上的功能,其工作原理如下: <input type="file" id="UpdateFile" runat="server" /> 我不知道如何使用Sitecore文件字段来实现这一点。这就是我到目前为止所做的: var importFile = glassItem.CSV; var fileItem = _db.GetItem(importFile.Id.ToString()); // get the Item from th

我的一个项目上有一个文件字段。我正在尝试实现上传页面上的功能,其工作原理如下:

<input type="file" id="UpdateFile" runat="server" />
我不知道如何使用Sitecore文件字段来实现这一点。这就是我到目前为止所做的:

var importFile = glassItem.CSV;
var fileItem = _db.GetItem(importFile.Id.ToString()); // get the Item from the media library
var media = MediaManager.GetMedia(fileItem);
var stream = media.GetStream();
StreamReader streamReader = new StreamReader(stream);

但是,我无法将MediaStream传递到StreamReader,它是错误的类型。我甚至不确定是否应该将该项目作为媒体对象获取

您应该使用从
GetStream()
方法收到的内容的
.Stream
属性:

newstreamreader(MediaManager.GetMedia(sampleMedia.GetStream().Stream)
因此,您的代码如下所示:

var importFile = glassItem.CSV;
var fileItem = _db.GetItem(importFile.Id.ToString()); // get the Item from the media library
var media = MediaManager.GetMedia(fileItem);
var stream = media.GetStream().Stream; // <-- check this line
new StreamReader(stream)
var importFile=glassItem.CSV;
var fileItem=_db.GetItem(importFile.Id.ToString());//从媒体库中获取项目
var media=MediaManager.GetMedia(fileItem);

var stream=media.GetStream().stream;// 您应该使用从
GetStream()
方法收到的内容的
.Stream
属性:

newstreamreader(MediaManager.GetMedia(sampleMedia.GetStream().Stream)
因此,您的代码如下所示:

var importFile = glassItem.CSV;
var fileItem = _db.GetItem(importFile.Id.ToString()); // get the Item from the media library
var media = MediaManager.GetMedia(fileItem);
var stream = media.GetStream().Stream; // <-- check this line
new StreamReader(stream)
var importFile=glassItem.CSV;
var fileItem=_db.GetItem(importFile.Id.ToString());//从媒体库中获取项目
var media=MediaManager.GetMedia(fileItem);

var stream=media.GetStream().stream;//仅作一般性评论:请使用指令/关闭流避免内存泄漏仅作一般性评论:请使用指令/关闭流避免内存泄漏