IItemContent.GetWriteStream Method (String, Int64)

IT Hit WebDAV for .NET

Saves resource's content to WebDAV server.

[Visual Basic]
Function GetWriteStream( _
   ByVal contentType As String, _
   ByVal contentLength As Long _
) As Stream
[C#]
Stream GetWriteStream(
   string contentType,
   long contentLength
);

Parameters

contentType
Media type of the resource.
contentLength
Length of data to be written.

Return Value

Stream to write resource content.

Exceptions

Exception Type Condition
NotFoundException This resource doesn't exist on the server.
ConflictException The resource is version controlled and has to be checked out to be edited.
WebDavHttpException Server returned unknown error.
WebDavException Unexpected error occurred.

Example

In the following example a file is uploaded to a WebDAV server.

                
string license = "<?xml version='1.0' encoding='utf...
WebDavSession session = new WebDavSession(license);
session.Credentials = new NetworkCredential("User1", "pwd");
IFolder folder = session.OpenFolder(new Uri("http://server:8080/Sales"));
FileInfo file = new FileInfo("C:\\Products.exe");

IResource resource = folder.CreateResource(file.Name);
resource.AllowWriteStreamBuffering = false;
resource.TimeOut = 36000000; // 10 hours
using (Stream webStream = resource.GetWriteStream("application/octet-stream", file.Length))
{
    int bufSize = 1048576; // 1Mb
    byte[] buffer = new byte[bufSize];
    int bytesRead = 0;

    using (FileStream fileStream = file.Open(FileMode.Open, FileAccess.Read, FileShare.Read))
    {
        while ( (bytesRead = fileStream.Read(buffer, 0, bufSize))>0)
            webStream.Write(buffer, 0, bytesRead);
    }
}
                
            

See Also

IItemContent Interface | ITHit.WebDAV.Client Namespace | IItemContent.GetWriteStream Overload List