2010-07-02 2 views
9

In Visual Studio, quando si aggiunge un riferimento, c'è una bandiera nelle proprietà chiamate "Copia locale". C'è una certa confusione su ciò che effettivamente fa e quando. Sembra facile da capire, ma la mia domanda è quando copia locale. È quando il riferimento viene aggiunto o copia la DLL localmente quando il progetto viene creato.visual studio copy local

Il motivo di questa domanda è che abbiamo creato un file modello asp.net che rimette una dll su tutte le workstation locali dei nostri sviluppatori esattamente nello stesso punto. Abbiamo pensato che impostando il flag su "Copia locale", questo avrebbe fatto riferimento alla posizione in cui la dll vive, ma quando usiamo il modello, il riferimento è rotto e deve essere aggiunto nuovamente.

Qualcuno può far luce su questo?

risposta

8

La proprietà Copia locale determina se un riferimento viene copiato nel percorso del cestino locale. In fase di esecuzione, deve esistere un riferimento nella Global Assembly Cache (GAC) o nel percorso di output del progetto. Se questa proprietà è impostata su true, il riferimento viene copiato nel percorso di output del progetto in fase di esecuzione.

Quindi questa proprietà non è effettivamente utile nel proprio scenario.

Sono in grado di suggerire una soluzione migliore che aggiungere l'assembly nella GAC ​​in ogni stazione di lavoro degli sviluppatori: http://msdn.microsoft.com/en-us/library/yf1d93sz.aspx