WebDAV Server Wizards for Visual Studio

The IT Hit WebDAV Server Engine installs several WebDAV Wizards. Below we will look at each wizard’s functionality in brief and will see where the wizards are located in Visual Studio interface.

Asynchronous or Synchronour Code Generation

Each wizard can generate asynchronous or synchronous sample code depending on .NET Framework version selected in New Project dialog or used in your project (in case adding WebDAV to existing project). The asynchronous code is generated if .NET Framework 4.5 or later is selected, the synchronous code is generated in case of .NET Framework 4.0 or 3.5.

The ITHit.WebDAV.Server.dll referenced in your project will also depend on .NET Framework version used. The .NET 4.5+ projects will reference the dll compiled for .NET Framework 4.5. The .NET 4.0 and .NET 3.5 projects - dll compiled for .NET Framework 4.0 or 3.5 respectively.

ASP.NET WebDAV Server Application Wizard

The 'ASP.NET WebDAV Server Application' wizard, can be accessed via File -> New Project -> Visual C# -> Web menu. It creates a simple Web Application that is fully dedicated to WebDAV. You cannot host any ASP.NET web pages in this type of project (except the page for custom GET handler) or create any Web Forms login page. It provides straightforward Basic and Digest authentication implementation with credentials stored directly in web.config file. This Wizard does not generate any mixed authentication code, so no Forms/cookies authentication will be supported by your WebDAV server. And finally the web.config file generated by this Wizard contains minimum config options only required to run WebDAV.

ASP.NET WebDAV Server Application wizard creates a simple web application that is fully dedicated to WebDAV

ASP.NET CalDAV / CardDAV Server Application wizard

The 'ASP.NET CalDAV / CardDAV Server Application' wizard is available in File -> New Project -> Visual C# -> Web menu. It creates a Web Application that is fully dedicated to CalDAV and CardDAV. It generates server that  is using Windows authentication and stores all calendar and address book data in file system.

Creation of CalDAV/CardDAV Server Application

Add WebDAV Server Implementation Wizard

The 'Add WebDAV Server Implementation...' wizard, is available in project context menu. Its purpose is to add WebDAV support to your existing ASP.NET Web Application, Web Site project, MVC 2-4 projects. It enables WebDAV on the folder of your choice while keeping the rest of the website intact. You can serve ASP.NET pages from the site root and from any other folders that are not dedicated to WebDAV. In addition to Basic and Digest authentication, it implements mixed authentication for Forms/cookies authentication support. Below you can see where to find the 'Add WebDAV Server Implementation Wizard'.

Add WebDAV Server Implementation wizard

HttpListener WebDAV Server Application Wizard

The 'HttpListener WebDAV Server Application Wizard' is available via File -> New Project -> Visual C# -> Windows menu. It creates a Windows Service application based on HttpListener that can also run as a console application. All HttpListener wizard options are identical to ASP.NET WebDAV Application Wizard. It creates a simple WebDAV server that is totally dedicated to WebDAV with Anonymous, Basic, Digest or Windows Integrated Authentication.

Creation of a Windows Server WebDAV Application based on HttpListener

 You can find a detailed description of each option in the wizards here.

After You Complete a Wizard

Each wizard creates a fully functional WebDAV server that you can start using immediately, running the project in IIS or IIS Express or as a console application or Windows Service. In the next article, we will first look at how 'ASP.NET WebDAV Server Application' works and then explain specifics of 'Add WebDAV Server Implementation...' Wizard.