Allow modifications to the content and custom properties of this version-controlled resource.
To allow modifications on a version-controlled item it must be first checked-out. If you would like to protect item from being modified by other users you will also lock the item.
| Exception Type | Condition |
|---|---|
| InvalidCheckOutCheckInStateException | The resource must be versionable and in checked in state. |
| UnsupportedDeltaVResult | Server returned result that is not supported by this client( DAV:checkout-of-version-with-descendant-is-forbidden DAV:checkout-of-version-with-descendant-is-discouraged DAV:checkout-of-checked-out-version-is-forbidden DAV:checkout-of-checked-out-version-is-discouraged) |
| LockedException | The resource is locked and no lock token was provided. |
| UnauthorizedException | Request is not authorized. |
| NotFoundException | This resource doesn't exist on the server. |
| WebDavHttpException | Server returned unknown error. |
| WebDavException | In case of any unexpected error. |
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...
WebDavSession session = new WebDavSession(license);
session.Credentials = new NetworkCredential("User1", "pwd");
IResource resource = session.OpenResource(new Uri("http://server/directory/resource.docx"));
LockInfo lockInfo = resource.Lock(LockScope.Exclusive, false, "John Walter", TimeSpan.MaxValue);
resource.CheckOut(lockInfo.LockToken.LockToken);
resource.UpdateProperties(
new Property[] {new Property(new PropertyName("amount", "server"), "2")}, null,
lockInfo.LockToken.LockToken);
IVersion version = resource.CheckIn(lockInfo.LockToken.LockToken);
resource.Unlock(lockInfo.LockToken.LockToken);
version.SetCommentAndAuthor("Fixed some bugs.", "John");
IResource Interface | ITHit.WebDAV.Client Namespace | IResource.CheckOut Overload List