Ich habe drei Webanwendungsprojekte, die eine gemeinsame Bibliothek mit benutzerdefinierten Serversteuerelementen verwenden. Die gemeinsame Nutzung des Codes hinter den Dateien ist einfach - sie werden in eine DLL kompiliert, auf die ich in den anderen Projekten über eine Projektreferenz verweise. Aber wie gehe ich mit Dateien wie JavaScript, Stylesheets und Bildern um? Ich versuche, dies "auf die Visual Studio-Art" zu tun, damit es so einfach wie möglich zu verstehen und zu debuggen ist.
Der derzeitige Aufbau sieht in etwa so aus:
CommonControlsWebApp
+- CustomControls
+- resources
+- images
+- scripts
+- stylesheets
WebApp1
+- resources\*
WebApp2
+- resources\*
WebApp3
+- resources\*
*) Virtuelles Verzeichnis im IIS.
Das virtuelle Verzeichnis auf jeder Web-App verweist auf das Ressourcenverzeichnis in meiner CommonControlsWebApp. Dies ist im IIS konfiguriert. Visual Studio ist nicht in der Lage, diese Verknüpfung zu verstehen, so dass das Debugging erfordert mich an den IIS-Prozess manuell anhängen.
Eine andere Lösung könnte darin bestehen, jede Ressource mit Hilfe von WebResourceAttribute in die gemeinsame DLL aufzunehmen. Aber das würde zu src
in etwas wie WebResource.axd?d=GUID verlinkt, wenn ich mir den Quellcode meiner Webseiten ansehe, und ich befürchte, dass die Fehlersuche dadurch ziemlich verwirrend wird.
Eine dritte Lösung wäre die Verwendung von Subversion, um die gleichen Dateien in alle drei Lösungen einzubinden. Niemand im Team hat dies bisher ausprobiert, daher sind wir nicht sicher, wie gut dies funktionieren würde.
Ich habe das Gefühl, dass ich eine großartige, offensichtliche Lösung für die Einrichtung der Projekte vermisse. Irgendwelche Vorschläge?