DeploymentWellKnownProvider DeploymentWellKnownProvider DeploymentWellKnownProvider DeploymentWellKnownProvider Enum


Defines the list of known deployment provider factories.

public enum class DeploymentWellKnownProvider
public enum DeploymentWellKnownProvider
type DeploymentWellKnownProvider = 
Public Enum DeploymentWellKnownProvider


AppHostConfig AppHostConfig AppHostConfig AppHostConfig 100

Deployment provider factory for applicationhost.config files.

AppHostSchema AppHostSchema AppHostSchema AppHostSchema 200

Deployment provider factory for applicationhost.config schema files.

AppPoolConfig AppPoolConfig AppPoolConfig AppPoolConfig 300

Deployment provider factory for application pools.

ArchiveDir ArchiveDir ArchiveDir ArchiveDir 400

Deployment provider factory for archive directories.

Auto Auto Auto Auto 500

Automatic deployment provider factory. This provider is only supported as a destination.

Cert Cert Cert Cert 600

Deployment provider factory for certificates.

ComObject32 ComObject32 ComObject32 ComObject32 700
ComObject64 ComObject64 ComObject64 ComObject64 800
ContentPath ContentPath ContentPath ContentPath 900

Deployment provider factory for filed-based content.

CreateApp CreateApp CreateApp CreateApp 1000
DBFullSql DBFullSql DBFullSql DBFullSql 1200

Deployment provider factory for SQL Server.

DBMySql DBMySql DBMySql DBMySql 1300

Deployment provider factory for MySQL.

DirPath DirPath DirPath DirPath 1100
FilePath FilePath FilePath FilePath 1400
GacAssembly GacAssembly GacAssembly GacAssembly 1500

Deployment provider factory for the global assembly cache.

IisApp IisApp IisApp IisApp 1600
MachineConfig32 MachineConfig32 MachineConfig32 MachineConfig32 1700

Deployment provider factory for 32-bit machine.config files.

MachineConfig64 MachineConfig64 MachineConfig64 MachineConfig64 1800

Deployment provider factory for 64-bit machine.config files.

Manifest Manifest Manifest Manifest 1900

Deployment provider factory for manifests.

MetaKey MetaKey MetaKey MetaKey 2000

Deployment provider factory for metabase updates.

Package Package Package Package 2100

Deployment provider factory for ZIP package files.

RecycleApp RecycleApp RecycleApp RecycleApp 2200
RegKey RegKey RegKey RegKey 2300

Deployment provider factory for registry keys.

RegValue RegValue RegValue RegValue 2400

Deployment provider factory for registry values.

RootWebConfig32 RootWebConfig32 RootWebConfig32 RootWebConfig32 2500

Deployment provider factory for 32-bit root web.config files.

RootWebConfig64 RootWebConfig64 RootWebConfig64 RootWebConfig64 2600

Deployment provider factory for 64-bit root web.config files.

RunCommand RunCommand RunCommand RunCommand 2700
SetAcl SetAcl SetAcl SetAcl 2800

Deployment provider factory for setting security ACLs.

Unknown Unknown Unknown Unknown 0
WebServer WebServer WebServer WebServer 2900

Deployment provider factory for IIS 7.0 web servers.

WebServer60 WebServer60 WebServer60 WebServer60 3000

Deployment provider factory for IIS 6.0 web servers.


The following example uses the enumeration DeploymentWellKnownProvider to implement a sync operation with the method SyncTo. DeploymentWellKnownProvider is a safer method of using shipped providers compared to manually inputted strings, which is an offered overload of CreateObject.


The switch statement helps to demonstrate the various elements in the enumeration

using System;

using Microsoft.Web.Deployment;

namespace MSDeploy.Web.Deployment


class Program


public enum OSVersion





public enum SyncTypes






static void Main(string[] args)


string _path = args[0];

OSVersion _osVersion = OSVersion.Windows2003;

SyncTypes _syncType = SyncTypes.Server;

DeploymentWellKnownProvider _provider =


switch (_syncType)


case SyncTypes.Content:

_provider =



case SyncTypes.File:

_provider = DeploymentWellKnownProvider.FilePath;


case SyncTypes.Server:

if (_osVersion == OSVersion.Windows2003)


_provider = DeploymentWellKnownProvider.WebServer60;


else if (_osVersion == OSVersion.Windows2008)


_provider = DeploymentWellKnownProvider.AppHostConfig;




throw new NotImplementedException();


DeploymentSyncOptions syncOptions =

new DeploymentSyncOptions();

DeploymentBaseOptions sourceBaseOptions =

new DeploymentBaseOptions();

DeploymentBaseOptions destinationBaseOptions =

new DeploymentBaseOptions();

DeploymentObject deploymentObject =


provider, path, sourceBaseOptions);


provider,_path, destinationBaseOptions, syncOptions);





This list contains the default provider factories shipped with the Microsft.Web.Deployment assembly. Additional implementations created by third-parties are not listed in this enumeration.

Applies to