Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 38548|Risposta: 2

[Fonte] L'impatto del file dll.refresh quando si fa riferimento alla libreria di classi del progetto

[Copiato link]
Pubblicato su 04/05/2020 20:42:50 | | |
Come tutti sappiamo, i programmi .net generano .dll file nella cartella bin dopo la generazione, ma da dove proviene il file .dll.refresh? Quel giorno ho cercato su Google 'noia' e ho scoperto che questo viene generato automaticamente quando si fa riferimento a un assembly di terze parti (direct) nel tuo progetto; questo file .refresh memorizza il percorso originale di quel file di terze parti; se il dll sotto questo percorso viene aggiornato, mentre quando il progetto viene generato, l'assemblaggio verrà aggiornato e modificato secondo questo indirizzo. Senza questo file, VS non potrà aggiornare l'assembly di riferimento secondo lo stato più recente, il che causerà il problema che la versione assembly sia errata. Un piccolo dettaglio porterà a un grosso problema, tutti prestate attenzione!

È stata rilasciata una nuova versione del sito web e si è scoperto un problema serio: una delle librerie non veniva aggiornata automaticamente, ma una versione obsoleta veniva generata automaticamente.

Dopo l'indagine, si è scoperto che era collegato a un file dll.refresh in VSS.

La ragione è semplice:

1。 Durante il processo di sviluppo, quando vengono aggiunti altri riferimenti DLL esterni al sito web, il sistema genera automaticamente il file di aggiornamento, e questo file non verrà generato se vengono aggiunti altri riferimenti DLL di progetto sotto questa soluzione

2。 Il file refresh specifica il percorso per aggiornare automaticamente la dll e, se si tratta di un riferimento a libreria, specificherà la directory Dubug o Release, e il file che ha un errore questa volta è la directory Debug

3。 Lo sviluppatore ha accidentalmente effettuato il check-in del file nel codice VSS

4。 Il problema è che la libreria di riferimento è cambiata molte volte dopo il rilascio della prima versione, ma l'interfaccia non è cambiata, quindi la libreria viene generata separatamente, e poi viene aggiornata solo la corrispondente DLL (versione di rilascio) di tutte le applicazioni, e non ci sono stati problemi, ma quando un'applicazione viene ripubblicata, a causa dell'esistenza di un file di aggiornamento nella directory BIN del progetto, la DLL viene automaticamente aggiornata con il percorso specificato dal file, il che porta al rilascio della vecchia DLL (versione Debug).

Risoluzione dei problemi:

Elimina il file dll.refresh nell'app e ripubblica l'app

Oppure modificare il contenuto in dll.refresh e scrivere correttamente il percorso dll





Precedente:Schema del database: separazione di lettura e scrittura su CQRS
Prossimo:Metodo NPM per configurare e cancellare i proxy
 Padrone di casa| Pubblicato su 04/05/2020 20:44:32 |
Facendo riferimento a un file dll esterno in VS2005 si produce un'estensione chiamata .refresh,
Se fai riferimento a un System.Web.Extensions.dll, genererà automaticamente un System.Web.Extensions.dll.refresh, che contiene il percorso assoluto di questa DLL.
Nota: Dopo la cancellazione, VS2005 non aggiornerà automaticamente la DLL che fai riferimento tramite il percorso file verso la cartella bin. Questo significa che se il DLL che hai citato viene aggiornato, dovrai riconsultarlo manualmente da solo.
 Padrone di casa| Pubblicato su 17/05/2020 11:51:33 |
test
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com