Microsoft KB Archive/313122

= How to delete objects by using WebDAV in Visual C# on a computer that is running Exchange 2000 Server =

Article ID: 313122

Article Last Modified on 12/11/2006

-

APPLIES TO


 * Microsoft Visual C# 2005
 * Microsoft Visual C# .NET 2003 Standard Edition
 * Microsoft Visual C# .NET 2002 Standard Edition
 * Microsoft Exchange 2000 Server Standard Edition

-



This article was previously published under Q313122



SUMMARY
This article describes how to delete objects by using Web Distributed Authoring and Versioning (WebDAV) in Microsoft Visual C# on a computer that is running Microsoft Exchange 2000 Server. This article also includes a code sample that uses the HttpWebRequest class and the HttpWebResponse class in the &quot;System.Net&quot; namespace to delete objects.



MORE INFORMATION
To delete objects by using WebDAV in Visual C# on a computer that is running Exchange 2000, follow these steps:  Start Microsoft Visual Studio .NET or Microsoft Visual Studio 2005. On the File menu, point to New, and then click Project. In the Visual C# Projects types list, click Console Application.

Note In Visual Studio 2005, click Console Application in the Visual C# list.

In Visual Studio .NET, Class1.cs is created by default. In Visual Studio 2005, Program.cs is created by default.  In the code window, replace the code with the following: using System; using System.Net; using System.IO;

namespace WebDavNET {   ///     /// Summary description for Class1. ///    class Class1 {       static void Main(string[] args) {           try {               // TODO: Replace with the URL of an object in Exchange 2000. string sUri = &quot;http://ExchServer/Exchange/Administrator/Inbox/NewApptFolder&quot;;

System.Uri myUri = new System.Uri(sUri); HttpWebRequest HttpWRequest = (HttpWebRequest)WebRequest.Create(myUri);

// Set the credentials. // TODO: Replace with the appropriate user credential. NetworkCredential myCred = new NetworkCredential(@&quot;DomainName\UserName&quot;, &quot;UserPassword&quot;); CredentialCache myCredentialCache = new CredentialCache; myCredentialCache.Add(myUri, &quot;Basic&quot;, myCred); HttpWRequest.Credentials = myCredentialCache;

// Set the headers. HttpWRequest.KeepAlive = false; HttpWRequest.Headers.Set(&quot;Pragma&quot;, &quot;no-cache&quot;);

//Set the request timeout to 5 minutes. HttpWRequest.Timeout = 300000; // set the request method HttpWRequest.Method = &quot;DELETE&quot;;

// Send the request and get the response. HttpWebResponse HttpWResponse = (HttpWebResponse)HttpWRequest.GetResponse;

// Get the Status code. int iStatCode = (int)HttpWResponse.StatusCode; string sStatus = iStatCode.ToString; Console.WriteLine(&quot;Status Code: {0}&quot;, sStatus); // Get the request headers string sReqHeaders = HttpWRequest.Headers.ToString; Console.WriteLine(sReqHeaders);

// Read the response stream. Stream strm = HttpWResponse.GetResponseStream; StreamReader sr = new StreamReader(strm); string sText = sr.ReadToEnd; Console.WriteLine(&quot;Response: {0}&quot;, sText);

// Close the stream. strm.Close;

// Clean up               myCred = null; myCredentialCache = null; HttpWRequest = null; HttpWResponse = null; strm = null; sr = null; }           catch (Exception e)            { Console.WriteLine(&quot;{0} Exception caught.&quot;, e); }       }    }

}  Search for TODO in the code, and then modify the code for your environment. Press F5 to build and to run the program. Make sure that the object was deleted.</li></ol>

Additional query words: delete,objects,exchange

Keywords: kbcode kbmsg kbhowto KB313122

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.