jeśli używasz IIS 7, nie jest nowa udało API o nazwie Microsoft.Web.Administration
Przykład z powyższym blogu:
ServerManager iisManager = new ServerManager();
iisManager.Sites.Add("NewSite", "http", "*:8080:", "d:\\MySite");
iisManager.CommitChanges();
Jeśli używasz usług IIS 6 i chcesz to zrobić, jest to bardziej skomplikowane, niestety.
Będziesz musiał utworzyć usługę internetową na każdym serwerze, serwis internetowy, który obsługuje tworzenie strony internetowej, ponieważ bezpośrednie podszywanie się pod użytkownika przez sieć nie będzie działało poprawnie (Jeśli dobrze pamiętam).
Będziesz musiał użyć Interop Usługi i zrobić coś podobnego do tego (Ten przykład używa dwóch obiektów, serwer i witryny, które są instancje klas niestandardowych, które przechowują serwer i konfiguracja witryny):
string metabasePath = "IIS://" + server.ComputerName + "/W3SVC";
DirectoryEntry w3svc = new DirectoryEntry(metabasePath, server.Username, server.Password);
string serverBindings = ":80:" + site.HostName;
string homeDirectory = server.WWWRootPath + "\\" + site.FolderName;
object[] newSite = new object[] { site.Name, new object[] { serverBindings }, homeDirectory };
object websiteId = (object)w3svc.Invoke("CreateNewSite", newSite);
// Returns the Website ID from the Metabase
int id = (int)websiteId;
Zobacz więcej here
Co IIS w wersji używasz? – kitsune
Używamy IIS 6 –
, który chcesz określić port podczas instalacji lub chcesz dodać stronę do IIS przez kod? –