Der Management Server hat die Möglichkeit über den .NET Ordner eine, komplette oder nur Teile, ASP.NET (IIS) WebApplikation zusammen mit den redaktionellen Seiten zu publizieren. Auch wenn das Feature vermutlich aktuell sehr selten verwendet wird. Sehe ich eine rosige Zukunft im Bereich Cloud, Docker usw.
Man könnte sich einen Automatismus per RQL usw. bauen, welcher dafür sorgt das die Projektvarianten immer auf den richtigen Applikationspfad zeigt. Und dann werden aus dem CMS die statischen (.NET) und die dynamischen (Content) Inhalte komplett auf den neuen Container publiziert.
Da wir bei uns immer mehr in diese Richtigung gehen, werden wir diese Feature intensiv testen und später berichten.
Jetzt erstmal dazu wie man dieses Feature einrichtet, einmal die Online-Hilfe und dann noch Ergänzungen aus einem Stackoverflow-Artikel.
Quelle: OpenText Web Site Management Server Online-Hilfe
.NET – Man wählt diesen Typ für Dateien, die immer auf dem Publizierungsziel verfügbar sein sollen, beispielsweise Konfigurationsdateien oder Assemblies in .NET-Projekten.
Zur Vorschau wird der Inhalt dieses Ordners in einen physischen Pfad publiziert, welcher im Projekt via RDExecute und in den Einstellungen via PreExecute definiert ist. Wenn die Projektvarianten-Eigenschaft Dateien aus .NET-Ordner publizieren aktiviert ist, wird der gesamte Inhalt des Ordners im Publizierungsordner publiziert, welcher für diesen Ordner konfiguriert ist.
Hinweis: Ordner von diesem Typ können Inhalts-Elementen nicht zugewiesen werden. Dateien in diesem Ordner können auch nicht direkt referenziert werden.
Sofern richtig konfiguriert, wird der gesamte Inhalt dieses Ordners während der Vorschau und später auf dem Publizierungsziel bereitgestellt.
NET-Ordner verwenden
Wenn man für ein Projekt das .NET-Framework nutzen möchte, muss man die folgenden Einstellungen vornehmen:
Templates erstellen/Eigenschaften bearbeiten
Quelle: Stackoverflow übersetzt
Kann jemand kurz erklären, wie man den Ordnertyp.NET in RedDot verwendet?
Ich möchte idealerweise Masterseiten und Benutzerkontrollen außerhalb von RedDot verwenden können. Um die Entwicklung zu erleichtern und der .NET-Ordner scheint mir zu erlauben dies zu tun.
Aus der Hilfe-Dokumentation:
.NET Ordner - Man wählt diesen Typ, wenn man das .NET Framework für sein Projekt verwenden möchte. In diesem Ordner kann man die notwendigen Konfigurationsdateien und Assemblies (Baugruppen) ablegen. Pro Projekt kann nur ein.NET-Ordner erstellt werden. Der Unterordner bin wird automatisch angelegt.
Und aus meiner kurzen Schulung im Januar glaube ich, dass der Instruktor darauf hinwies, dass Assemblies, die in den .NET-Ordner gelegt wurden, in vorab ausgeführten Codeblöcken in den Content-Klassen (Templates) verwendet werden könnten.
Nachdem Sie einige Untersuchungen und Experimente damit durchgeführt haben, sieht es so aus, als ob es den Bin-Ordner und alle Dateien in diesem Ordner, aber nicht Unterverzeichnisse, bereitstellen wird, wenn Sie die Website veröffentlichen. Es scheint nichts mit diesem Ordner im Smartedit-Modus zu tun zu haben, daher muss die .net-Funktionalität beim Bearbeiten deaktiviert werden.
Das ist nicht wahr. Ich habe definitiv .NET-Steuerelemente im SmartEdit-Modus verwendet.
Für die Unterstützung von .NET-Projekten stellt RedDot CMS für jedes Projekt den .NET-Ordner und konfigurierbare virtuelle Verzeichnisse zur Verfügung. Wenn man das .NET-Framework für sein Projekt verwenden möchte, muss die folgenden Einstellungen konfigurieren:
Gib den physischen Pfad und das virtuelle Verzeichnis ein.
Gib den physischen Pfad und das virtuelle Verzeichnis an, um RDExecute- und PreExecute-Seiten wie z.B. aspx-Seiten auszuführen.
(SmartTree > Start > Projekteinstellungen bearbeiten > Projekt > Aktion: Allgemeine Einstellungen > Einstellungen bearbeiten: RDExecute und PreExecute Einstellungen)
Das hier eingestellte virtuelle Verzeichnis wird dem im RedDot Content Server angegebenen Host-Header hinzugefügt. Wenn kein Verzeichnis angegeben wird, wird ausschließlich der Host-Header verwendet, wenn eines angegeben wird.
Das virtuelle Verzeichnis sollte sich nicht im Pfad des virtuellen Verzeichnis des CMS befinden. Da die Gefahr besteht, dass die Konfigurationsdateien RedDot CMS selbst betreffen. Im Idealfall sollte ein virtuelles Verzeichnis gewählt werden, das auf einer Ebene unterhalb des virtuellen Verzeichnisses von RedDot CMS erstellt wurde.
Ein Verzeichnis, das auf einer Ebene parallel zum virtuellen Verzeichnis von RedDot CMS angelegt wurde, wird bei Verwendung eines Host-Headers nicht empfohlen (da der Host-Header auch für Integrationen verwendet wird). Das könnte möglicherweise nicht mehr funktionieren.
Beispiel für den virtuellen Pfad: /CMS/mysite/PreExecute
Einrichten des .NET-Ordners
Erstelle einen.NET-Ordner, in dem die erforderlichen Konfigurationsdateien und Baugruppen gespeichert werden. Pro Projekt kann nur ein .NET-Ordner erstellt werden. Der Unterordner bin wird automatisch angelegt. Das Stammverzeichnis des .NET-Projekts muss dem .NET-Ordner als Publikationsordner zugeordnet sein.
(SmartTree > Start > Projekteinstellungen bearbeiten > Projekt > Ordner > Aktion: Ordner erstellen)
Projektvarianten einrichten
Du kannst festlegen, dass der Ordner .NET für die Projektvarianten deines Projekts verwendet werden soll. Wenn du diese Einstellung für eine Projektvariante konfiguriert hast, wird bei jeder Veröffentlichung dieser Projektvariante geprüft, ob sich die Dateien im .NET-Ordner oder seinen Unterordnern geändert haben. Alle geänderten Dateien werden ebenfalls veröffentlicht.
(SmartTree > Start > Projekteinstellungen bearbeiten > Projekt > Projektvarianten > Projektvariante auswählen > Aktion: Projektvariante bearbeiten > Projektvariante bearbeiten > .NET-Ordner verwenden)
Aktualisieren des .NET-Ordners
Mit Hilfe eines manuellen Updates des.NET-Ordners wird das virtuelle Verzeichnis für RDExecute und PreExecute aktualisiert. Das Update wird auf dem .NET-Ordner angestoßen und ist clusterweit.
(SmartTree > Start > Projekteinstellungen bearbeiten > Projekt > Ordner > .NET-Ordner auswählen > Aktion: IIS Anwendung aktualisieren)
Das virtuelle Verzeichnis wird auch automatisch aktualisiert, wenn Dateien im .NET-Ordner hochgeladen oder gelöscht werden. Die Aktualisierung erfolgt nur, wenn in den Projekteinstellungen ein physischer Ordner angegeben wurde.
Und schließlich
Man sollte in erster Linie ASP.NET zusammen mit der RDExecute-Funktionalität verwenden. Bei Verwendung von PreExecute (Active Templates) sind einige Mechanismen nicht oder nicht vollständig funktionsfähig. Wenn du planst, ASP.NET in PreExecute-Bereichen zu verwenden, denk bitte daran die Anwendung sorgfältig zu testen.
Persönlich geben wir RedDot CMS vor, dass es den Bin-Ordner in einen Tempbin-Ordner auf dem Publizierungsserver verschieben soll. Andernfalls werden diese Dateien überschrieben, wenn man aus Visual Studio zum Testen usw. veröffentlicht.
Der Ordnertyp .NET ist im wesentlichen ein Ort für die Veröffentlichung von 'Zeug', auf den kein Element verweist. RedDot CMS veröffentlicht normalerweise nur Dinge, welche auf irgendeine Weise miteinander verbunden sind (direkt, über Referenz oder über Keyword-Assoziation).
Wenn man beispielsweise einige kompilierte DLLs hat, werden diese veröffentlicht, sofern diese sich im.NET-Ordner befinden. Auch wenn man keinen Platzhalter für ihre Referenz erstellt hat.
Man muss angeben, dass der Ordner .NET - im Bereich Projektvariante bearbeiten - der angegebenen Variante verwendet werden soll.
Der Inhalt des .NET-Ordners (hier zwei *.zip-Dateien) sollte zusammen mit den RedDot-Seiten veröffentlicht werden.
... ist Senior Site Reliability Engineer bei der Vodafone GmbH in Düsseldorf. Seit dem Jahr 2007 betreut er zusammen mit seinen Kollegen die OpenText- (vormals RedDot-) Plattform Web Site Management für die deutsche Konzernzentrale.
Er entwickelt Erweiterungen in Form von Plug-Ins und PowerShell Skripten. Seit den Anfängen in 2001 (RedDot CMS 4.0) kennt er sich speziell mit der Arbeitweise und den Funktionen des Management Server aus.