Back to Devexpress

SpreadsheetBuilder.Open(String, Func<Stream>) Method

aspnetcore-devexpress-dot-aspnetcore-dot-spreadsheet-dot-spreadsheetbuilder-dot-open-x28-system-dot-string-system-dot-func-system-dot-io-dot-stream-x29.md

latest3.1 KB
Original Source

SpreadsheetBuilder.Open(String, Func<Stream>) Method

Opens a document from a stream.

Namespace : DevExpress.AspNetCore.Spreadsheet

Assembly : DevExpress.AspNetCore.Spreadsheet.v25.2.dll

NuGet Package : DevExpress.AspNetCore.Spreadsheet

Declaration

csharp
public SpreadsheetBuilder Open(
    string documentId,
    Func<Stream> contentAccessorByStream
)

Parameters

NameTypeDescription
documentIdString

A document identifier.

| | contentAccessorByStream | Func<Stream> |

A method delegate that obtains a stream.

|

Returns

TypeDescription
SpreadsheetBuilder

An object that can be used to further configure the Spreadsheet.

|

Remarks

This overload determines the document’s format automatically. Pass the document format to the Open(String, DocumentFormat, Func<Stream>) method to disable automatic detection and improve performance when you open a document. Refer to the following section for more information: Open a Document from a Stream.

The example below demonstrates how to open a document from a stream:

razor
@model SpreadsheetDocumentContent

@(Html.DevExpress()
    .Spreadsheet("spreadsheet")
    .Open(@Model.DocumentId, @Model.ContentAccessorByStream)
)
csharp
public IActionResult Index() {
    Func<Stream> contentAccessorByStream = () => System.IO.File.Open("your-file-path", FileMode.Open);
    var model = new SpreadsheetDocumentContent(DocumentId1, contentAccessorByStream);
    return View(model);
}
csharp
public class SpreadsheetDocumentContent {
    public string DocumentId { get; set; }
    public Func<Stream> ContentAccessorByStream { get; set; }
    public DocumentFormat DocumentFormat { get; set; } = DocumentFormat.Xlsx;
    public SpreadsheetDocumentContent(string documentId, Stream contentAccessorByStream) {
        DocumentId = documentId;
        ContentAccessorByStream = contentAccessorByStream;
    }
}

See Also

SpreadsheetBuilder Class

SpreadsheetBuilder Members

DevExpress.AspNetCore.Spreadsheet Namespace