Frage

Eines der Projekte, die ich verantwortlich war, als ein JSP / Struts-Entwickler bei meinem letzten Arbeitgeber war eine Themen-Tag-Bibliothek (vorhanden auf jedem WebSphere-Server als Shared Library), die in jedem beliebigen Java-Web-Entwickler im Unternehmen ziehen lassen die Standard-Themen wie Intranet, Öffentlichkeit usw. mit minimalem Aufwand. Die Themen enthalten Header, Footer, Navigation und Links zu CSS & Javascript etc. Sie könnten sogar die Dinge ein wenig anpassen, wenn wir ihnen die Möglichkeit gab, wie eine ausgewählte Registerkarte Auswahl.

Dieses Setup ideal war, weil wir die zentrale Änderung auf alle Standard-UI-Elemente machen könnten und sie wurden von allen Standorten automatisch eingezogen mit Themen ohne großen Aufwand von den Site-Entwicklern.

Mit dem neuen Job, den ich im Dezember begann, hat mich zur Verwendung von ASP.NET geschaltet. Ich mag App hier etwas im Geist zu den Themen vorzuschlagen, da wir eine Reihe von verschiedenen Websites laufen, die ein einheitliches Aussehen haben sollten und fühlen.

Was ist der beste Weg, dies zu erreichen? Ich möchte lieber nicht haben, etwas neu zu kompilieren, das Thema zu aktualisieren, um diese Arbeit zu machen.

Edit:

Obwohl ich für eine bessere Antwort hatte gehofft, die .NET-Götter genehmigen offenbar nicht von dem, was ich versuche, zu erreichen. Hier sind die drei Optionen, die gefunden wurden:

  1. Erstellen Sie eine Master-Seite in eine DLL und steckte es in die GAC: Dies funktioniert in einfachen Fällen, aber wie ein Hack, es ist zu spröde. Ich konnte es nicht richtig mit unserer Seite zu arbeiten.

  2. Erstellen Sie ein virtuelles Verzeichnis in der Master-Seite in jedem Web-App: Das tatsächlich funktioniert, obwohl es für eine sehr komfortable Entwicklungsumgebung nicht machen. Doch eines der Dinge, versuchen wir wegziehen aus ist mit dem virtuellen Verzeichnissen in jeder Web-Anwendung zu erstellen. Keine Würfel.

  3. Erstellen Sie eine Reihe von benutzerdefinierten Steuerelemente, kompilieren sie in eine DLL, und steckte es in die GAC: Dies ist die Antwort, die ich ausgewählt. Es ist die am wenigsten zentralisierte Option und erfordert mehr Arbeit für den Entwickler von jedem Standort, aber es scheint der einzige Microsoft-gesegnete Weg zu sein.

Abschließend bin ich ziemlich frustriert mit .NET über diese. In dem großen Plan der Dinge Masterseiten sind nur Code, und ich sehe keinen Grund, warum sie nicht leicht für den Einsatz in mehreren Web-Anwendungen zentralisiert werden. Dies scheint ein großer Verlust zu sein, im Vergleich zu JSP / Java.

War es hilfreich?

Lösung

Sie können einige UI in Form von benutzerdefinierten Steuerelemente oder Server-Steuerelemente (wenn nicht in MVC) setzen und dann legen Sie sie in die GAC damit sie zu verteilen. Alle Verweise auf die Kontrollen in dieser Versammlung werden von der neuesten Version im GAC gezogen werden. Sie können auch über die Machine.config Dinge tun, die auf Server-Ebene gesteuert wird, anstatt die App-Ebene.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top