Click or drag to resize

IItemContentUploadAsync Method (FuncStream, Task, Int64, LockUriTokenPair, IDictionaryString, String, CancellationToken)

IT Hit WebDAV Classes Reference
Uploads content of a file specified by function onStreamAvailable to the server.

Namespace:  ITHit.WebDAV.Client
Assembly:  ITHit.WebDAV.Client (in ITHit.WebDAV.Client.dll) Version: 6.0.4052-Beta
Syntax
Task UploadAsync(
	Func<Stream, Task> onStreamAvailable,
	long fileLength,
	LockUriTokenPair[] lockTokens = null,
	IDictionary<string, string> headers = null,
	CancellationToken cancellationToken = null
)

Parameters

onStreamAvailable
Type: SystemFuncStream, Task
Function to upload file content.
fileLength
Type: SystemInt64
File content length.
lockTokens (Optional)
Type: ITHit.WebDAV.ClientLockUriTokenPair
Lock tokens for this resource.
headers (Optional)
Type: System.Collections.GenericIDictionaryString, String
Request headers.
cancellationToken (Optional)
Type: System.ThreadingCancellationToken
Propagates notification that operations should be canceled.

Return Value

Type: Task

[Missing <returns> documentation for "M:ITHit.WebDAV.Client.IItemContent.UploadAsync(System.Func{System.IO.Stream,System.Threading.Tasks.Task},System.Int64,ITHit.WebDAV.Client.LockUriTokenPair[],System.Collections.Generic.IDictionary{System.String,System.String},System.Threading.CancellationToken)"]

Exceptions
ExceptionCondition
NotFoundExceptionThis resource doesn't exist on the server.
ConflictException The resource is version controlled and has to be checked out to be edited.
WebDavHttpExceptionServer returned unknown error.
WebDavExceptionUnexpected error occurred.
IOExceptionAn I/O error occurs.
ArgumentOutOfRangeExceptionFile is empty.
Examples
The following example demonstrates how to upload a file from local file system to a WebDAV server.
string license = "<?xml version='1.0' encoding='utf...
WebDavSessionAsync session = new WebDavSessionAsync(license);
session.Credentials = new NetworkCredential("User1", "pwd");
IFolder folder = await session.GetFolderAsync(new Uri("https://server:8080/Sales"));

IFile file = await folder.CreateFileAsync("products.xlsx");
file.AllowWriteStreamBuffering = false;
file.TimeOut = 36000000; // 10 hours
await file.UploadAsync("C:\\products.xlsx");
See Also