static void CreateObjectsToSearch() { Console.WriteLine("Creating objects to search..."); DsmlRequestDocument batchRequest = new DsmlRequestDocument(); for (int i = 1; i <= numberOfPages * pageSize; i++) { string dn = "OU=object" + i + "," + targetOU; batchRequest.Add(new AddRequest(dn, "organizationalUnit")); } dsmlConnection.SendRequest(batchRequest); Console.WriteLine(numberOfPages * pageSize + " Objects are created successfully."); }
static void DeleteObjectsToSearch() { Console.WriteLine("Deleting objects..."); DsmlRequestDocument batchRequest = new DsmlRequestDocument(); for (int i = 1; i <= numberOfPages * pageSize; i++) { string dn = "OU=object" + i + "," + targetOU; batchRequest.Add(new DeleteRequest(dn)); } dsmlConnection.SendRequest(batchRequest); Console.WriteLine(numberOfPages * pageSize + " Objects are deleted successfully."); }
public System.IAsyncResult BeginSendRequest(DsmlRequestDocument request, System.AsyncCallback callback, object state) {}
public DsmlResponseDocument SendRequest(DsmlRequestDocument request) {}
static void SendBatchRequest() { DsmlRequestDocument batchRequest = new DsmlRequestDocument(); AddRequest addRequest; ModifyRequest modifyRequest; CompareRequest compareRequest; DeleteRequest deleteRequest; // create new OUs under the specified OU ou1 = "OU=sampleOU1," + targetOU; ou2 = "OU=sampleOU2," + targetOU; ou3 = "OU=sampleOU3," + targetOU; string objectClass = "organizationalUnit"; // add multiple requests (make sure ) addRequest = new AddRequest(ou1, objectClass); addRequest.RequestId = "Add1"; batchRequest.Add(addRequest); addRequest = new AddRequest(ou2, objectClass); addRequest.RequestId = "Add2"; batchRequest.Add(addRequest); addRequest = new AddRequest(ou3, objectClass); addRequest.RequestId = "Add3"; batchRequest.Add(addRequest); compareRequest = new CompareRequest(ou1, "distinguishedName", ou1); compareRequest.RequestId = "Compare1"; batchRequest.Add(compareRequest); deleteRequest = new DeleteRequest(ou1); deleteRequest.RequestId = "Delete1"; batchRequest.Add(deleteRequest); compareRequest = new CompareRequest(ou2, "distinguishedName", ou2); compareRequest.RequestId = "Compare2"; batchRequest.Add(compareRequest); modifyRequest = new ModifyRequest(ou2, DirectoryAttributeOperation.Replace, "description", "Testing BatchRequest"); modifyRequest.RequestId = "Modify1"; batchRequest.Add(modifyRequest); deleteRequest = new DeleteRequest(ou2); deleteRequest.RequestId = "Delete2"; batchRequest.Add(deleteRequest); deleteRequest = new DeleteRequest(ou3); deleteRequest.RequestId = "Delete3"; batchRequest.Add(deleteRequest); DsmlResponseDocument batchResponse = dsmlConnection.SendRequest(batchRequest); foreach (DirectoryResponse response in batchResponse) { Console.WriteLine(response.GetType().Name + ": \tId=" + response.RequestId + ",\tResultCode=" + response.ResultCode); } Console.WriteLine("Batch request has been processed successfully."); }
public System.IAsyncResult BeginSendRequest(DsmlRequestDocument request, System.AsyncCallback callback, object state) { }
public DsmlResponseDocument SendRequest(DsmlRequestDocument request) { }