string _serverName = "localhost";
DirectoryEntry _iisServer;

_iisServer=new DirectoryEntry("IIS://" + _serverName + "/W3SVC/1","administrator","");
string nameDirectory="dxb2";
string realPath="C:\\Inetpub\\wwwroot";
string VirDirSchemaName = "IIsWebVirtualDir";
DirectoryEntry folderRoot = _iisServer.Children.Find("Root",VirDirSchemaName);

DirectoryEntry newVirDir = folderRoot.Children.Add(nameDirectory,folderRoot.SchemaClassName);
newVirDir.Properties["AccessRead"].Add(true);
newVirDir.Properties["Path"].Add(realPath);
newVirDir.Invoke("AppCreate",true);
newVirDir.CommitChanges();
folderRoot.CommitChanges();
_iisServer.CommitChanges();
还有刚开始老说我没有权限然后我再WEB.config中加入 <identity impersonate="true"/>  不知道是什么意思??