2009-03-11 4 views
2

Ich bin dabei, einige von IIS gehostete WCF-Projekte für die fortlaufende Integration einzurichten, und versuche, die beste und einfachste Methode für die automatisierte Bereitstellung zu finden.Automatische WCF-Bereitstellung

Jetzt habe ich die Erstellung und Bereitstellung mit CC.NET, MSBUILD und einer Batchdatei, die die erforderlichen Dateien in den Deployment-Ordner kopiert, aber ich denke, es muss einen besseren Weg geben.

Im Idealfall möchte ich etwas wie Web-Bereitstellungsprojekte, aber für WCF.

Ich würde mich für ein nettes Power Shell-Skript begnügen, um alle notwendigen Dateien zu kopieren und alle Flaum auszuschließen.

+0

Welche Hosting-Methode verwenden Sie? –

+0

IIS gehostet. Ich habe die Frage so geändert, dass sie diese Informationen enthält. –

Antwort

2

Nun, es gibt nichts, was Sie davon abhält, ein Web-Bereitstellungsprojekt zum Hosten Ihrer WCF-Klassenbibliothek zu verwenden. Die SVC-Datei wird von IIS abgeholt und entsprechend weitergeleitet. Wir verwenden ein Standardimplementierungsprojekt und eine benutzerdefinierte Aktion, um den IIS-Vroot zu erstellen, sodass wir die Einstellungen genauer steuern können, aber auch ein Standard-Web-Bereitstellungsprojekt.

Sofern Sie nicht unter IIS7 ausgeführt werden, handelt es sich bei IIS lediglich um Standardinhalte mit einem eigenen Handler. Wenn Sie zu Windows 2008/Windows 7 Beta kommen, können sich die Dinge ein wenig ändern, da diese Versionen ein sehr unterschiedliches Handler-Modell haben.

Ich habe diesen Beitrag, um wirklich hilfreich: http://msdn.microsoft.com/en-us/library/bb332338.aspx

+0

Aus irgendeinem Grund konnte ich kein Web-Bereitstellungsprojekt mit WCF auf meinem Computer hinzufügen. Es stellte sich heraus, dass ich neu installieren musste. Vielen Dank. –

2

Dies hängt sehr von den Technologien ab, die Sie verwenden. In einem früheren Projekt haben wir TFS mit Team Build verwendet. Das Ergebnis war, dass die WCF-Projekte in eine Ordnerstruktur integriert wurden, die ihrer Bereitstellungsstruktur entsprach. Zusätzliche Aufgaben im MSBUILD-Skript haben ein Deployment-Skript ausgelöst (glaube ich in PERL geschrieben). Dadurch wurden alle Bereitstellungsaufgaben erledigt, z. B. das Löschen alter Ordner, das Erstellen neuer Datenbanken, das Erstellen von Datenbanken und das Füllen mit Referenzdaten, die Bereitstellung des Service und der Websites sowie die Ausführung von Installationsüberprüfungsskripts und die Veröffentlichung der Ergebnisse auf einer Website.

Auf der anderen Seite, wenn alles, was Sie haben, ist ein Hammer, dann Hammer weg.

+0

Also im Grunde haben Sie eine Batch-Datei verwendet. Daran können wir festhalten. –

+0

Nein, wir haben MSBUILD und ein PERL-Skript verwendet. Es ist etwas einfacher, komplizierte Aufgaben zu erledigen, wenn Sie anständige Programmierkonstrukte wie in PERL haben. –

Verwandte Themen