Click or drag to resize

IFileCheckInAsync Method

IT Hit WebDAV Classes Reference
Creates new version.

Namespace:  ITHit.WebDAV.Client
Assembly:  ITHit.WebDAV.Client (in ITHit.WebDAV.Client.dll) Version: 6.0.4052-Beta
Syntax
Task<IVersion> CheckInAsync(
	string lockToken = null,
	IDictionary<string, string> headers = null,
	CancellationToken cancellationToken = null
)

Parameters

lockToken (Optional)
Type: SystemString
Lock token for this item.
headers (Optional)
Type: System.Collections.GenericIDictionaryString, String
Request headers.
cancellationToken (Optional)
Type: System.ThreadingCancellationToken
Propagates notification that operations should be canceled.

Return Value

Type: TaskIVersion

[Missing <returns> documentation for "M:ITHit.WebDAV.Client.IFile.CheckInAsync(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.Threading.CancellationToken)"]

Exceptions
ExceptionCondition
InvalidCheckOutCheckInStateException The resource must be version controlled and in Checked out state.
UnsupportedDeltaVResult Server returned result that is not supported by this client (DAV:check-in-fork-forbidden, DAV:check-in-fork-is-tree, DAV:check-in-fork-is-discouraged.)
LockedExceptionThis item is locked and invalid lock token was provided.
UnauthorizedExceptionRequest is not authorized.
NotFoundExceptionThis resource doesn't exist on the server.
WebDavHttpExceptionServer returned unknown error.
WebDavExceptionIn case of any unexpected error.
Examples
The following example demonstrates how to lock item, check-out, update, check-in, unlock and set comment and author for a version.
string license = "<?xml version='1.0' encoding='utf...
WebDavSessionAsync session = new WebDavSessionAsync(license);
session.Credentials = new NetworkCredential("User1", "pwd");

IFile file = await session.GetFileAsync(new Uri("https://server/directory/file.docx"));
LockInfo lockInfo = await file.LockAsync(LockScope.Exclusive, false, "John Walter", TimeSpan.MaxValue);
await file.CheckOutAsync(lockInfo.LockToken.LockToken);
await file.UpdatePropertiesAsync(
    new Property[] {new Property(new PropertyName("amount", "server"), "2")}, null,
    lockInfo.LockToken.LockToken);
IVersion version = await file.CheckInAsync(lockInfo.LockToken.LockToken);
await file.UnlockAsync(lockInfo.LockToken.LockToken);
await version.SetCommentAndAuthorAsync("Fixed some bugs.", "John");
See Also