Ho tre progetti di applicazioni Web che condividono una libreria comune di controlli server personalizzati. Condividere il codice dietro i file è facile: sono compilati in una DLL che faccio riferimento negli altri progetti utilizzando un riferimento al progetto. Ma come gestisco i file come JavaScript, fogli di stile e immagini? Sto cercando di fare questo "modo di Visual Studio" in modo che sia il più semplice possibile per capire e fare il debug.Come condividere risorse web comuni tra applicazioni Web in Visual Studio?
La configurazione attuale è un po 'come questo:
CommonControlsWebApp +- CustomControls +- resources +- images +- scripts +- stylesheets WebApp1 +- resources* WebApp2 +- resources* WebApp3 +- resources*
*) directory virtuale in IIS.
La directory virtuale su ogni app Web punta alla directory delle risorse nella mia CommonControlsWebApp. Questo è configurato in IIS. Visual Studio non è in grado di comprendere questo collegamento, quindi il debug richiede l'associazione manuale al processo IIS.
Un'altra soluzione potrebbe essere quella di includere ogni risorsa nella dll comune utilizzando WebResourceAttribute. Ma ciò trasformerebbe i collegamenti di src
in qualcosa di simile a WebResource.axd? D = GUID quando visualizzo la fonte delle mie pagine web, e temo che questo renderà piuttosto complicato il debug.
Una terza soluzione sarebbe utilizzare Subversion per includere gli stessi file in tutte e tre le soluzioni. Nessuno nella squadra ci ha provato prima, quindi non siamo sicuri di quanto bene funzionerebbe.
Sento che mi manca una soluzione eccezionale e ovvia su come impostare i progetti. Eventuali suggerimenti?
Grazie mille per questo suggerimento. Temo di poter contrassegnare solo una risposta come risposta. –
Nessun problema, tale è la vita :) – Lennaert
Come funziona questo approccio con il debug? Può un punto di interruzione nel file JavaScript che viene sovrascritto dalla compilazione? –