The following example lists the Application objects found under the default Web site and then lists each VirtualDirectory object found in the VirtualDirectories property of each Application object.
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.Web.Administration;
using Microsoft.Web.Management;
namespace AdministrationSnippets
{
public class AdministrationApplicationVirtualDirectories
{
...
// Writes out the applications found under the default Web site
// and then writes out the virtual directories for each application.
public void GetVirtualDirectories()
{
ServerManager manager = new ServerManager();
Site defaultSite = manager.Sites["Default Web Site"];
foreach (Application app in defaultSite.Applications)
{
Console.WriteLine(
"Found application with the following path: {0}", app.Path);
Console.WriteLine("Virtual Directories:");
if ( app.VirtualDirectories.Count > 0 )
{
foreach ( VirtualDirectory vdir in app.VirtualDirectories )
{
Console.WriteLine(
" Virtual Directory: {0}", vdir.Path);
Console.WriteLine(
" |-PhysicalPath = {0}", vdir.PhysicalPath);
Console.WriteLine(
" |-LogonMethod = {0}", vdir.LogonMethod);
Console.WriteLine(
" +-UserName = {0}\r\n", vdir.UserName);
}
}
}
}
...
}
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.Web.Administration
Imports Microsoft.Web.Management
Namespace AdministrationSnippets
Public Class AdministrationApplicationVirtualDirectories
...
'' Writes out all applications found under default web site and their
'' virtual directories
Public Sub GetVirtualDirectories()
Dim manager As New ServerManager()
Dim defaultSite As Site = manager.Sites("Default Web Site")
For Each app As Application In defaultSite.Applications
Console.WriteLine("Found application with the following path: {0}", app.Path)
Console.WriteLine("Virtual Directories:")
If app.VirtualDirectories.Count > 0 Then
For Each vdir As VirtualDirectory In app.VirtualDirectories
Console.WriteLine(" Virtual Directory: {0}", vdir.Path)
Console.WriteLine(" |-PhysicalPath = {0}", vdir.PhysicalPath)
Console.WriteLine(" |-LogonMethod = {0}", vdir.LogonMethod)
Console.WriteLine(" +-UserName = {0}\r\n", vdir.UserName)
Next
End If
NExt
End Sub
...
End Class
End Namespace
The following example creates an application under the default Web site and then creates a virtual directory for the application.
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.Web.Administration;
using Microsoft.Web.Management;
namespace AdministrationSnippets
{
public class AdministrationApplicationVirtualDirectories
{
...
// Creates an application under the default Web site and
// then creates a virtual directory for the application.
public void CreateVirtualDirectory()
{
ServerManager manager = new ServerManager();
Site defaultSite = manager.Sites["Default Web Site"];
Application photoApp = defaultSite.Applications.Add(
"/photos", @"C:\inetpub\wwwroot\photos\");
photoApp.VirtualDirectories.Add(
"/family", @"C:\inetpub\wwwroot\familyphotos\");
manager.CommitChanges();
}
...
}
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.Web.Administration
Imports Microsoft.Web.Management
Namespace AdministrationSnippets
Public Class AdministrationApplicationVirtualDirectories
...
'' Creates an application under the default website, then creates a
'' virtual directory under the application
Public Sub CreateVirtualDirectory()
Dim manager As New ServerManager()
Dim defaultSite As Site = manager.Sites("Default Web Site")
Dim photoApp As Application = _
defaultSite.Applications.Add("/photos", "C:\inetpub\wwwroot\photos\")
photoApp.VirtualDirectories.Add("/family", "C:\inetpub\wwwroot\familyphotos\")
manager.CommitChanges()
End Sub
...
End Class
End Namespace