IFileData.LoadFromStream(String, Stream) Method
Loads the file data from a stream.
Namespace: DevExpress.Persistent.Base
Assembly: DevExpress.Persistent.Base.v20.2.dll
Declaration
Parameters
Name | Type | Description |
---|---|---|
fileName | String | A string that is the file name. |
stream | Stream | A Stream that is the file content. |
Remarks
The example below demonstrates how to use the LoadFromStream method to upload a Contact’s file into a portfolio.
using System.IO;
using DevExpress.ExpressApp;
using DevExpress.ExpressApp.Actions;
using DevExpress.Persistent.Base;
using DevExpress.Persistent.BaseImpl;
using MainDemo.Module.BusinessObjects;
// ...
public class UpdatePortfolioController : ObjectViewController<DetailView, Resume> {
public UpdatePortfolioController() {
SimpleAction updatePortfolioAction = new SimpleAction(this, "UpdatePortfolio", PredefinedCategory.Edit);
updatePortfolioAction.SelectionDependencyType = SelectionDependencyType.RequireSingleObject;
updatePortfolioAction.Execute += updatePortfolioAction_Execute;
}
private void updatePortfolioAction_Execute(object sender, SimpleActionExecuteEventArgs e) {
FileData currentFile = ViewCurrentObject.File;
if(currentFile != null && !currentFile.IsEmpty) {
FileData fileCopy = ObjectSpace.CreateObject<FileData>();
using(var stream = new MemoryStream()) {
currentFile.SaveToStream(stream);
stream.Position = 0;
fileCopy.LoadFromStream(currentFile.FileName, stream);
}
PortfolioFileData portfolio = ObjectSpace.CreateObject<PortfolioFileData>();
portfolio.File = fileCopy;
ViewCurrentObject.Portfolio.Add(portfolio);
ObjectSpace.CommitChanges();
}
}
}
Here, FileData is a built-in class that implements the IFileData interface.
Related GitHub Examples
The following code snippet (auto-collected from DevExpress Examples) contains a reference to the LoadFromStream(String, Stream) method.
Note
The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.