Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 38548|Svare: 2

[Kilde] Effekten av dll.refresh-filen når man refererer til prosjektklassebiblioteket

[Kopier lenke]
Publisert på 04.05.2020 20:42:50 | | |
Som vi alle vet, vil .net-programmer generere .dll filer i bin-mappen etter at de er generert, men hvor kommer filen .dll.refresh fra? Jeg googlet kjedsomhet den dagen og fant ut at dette automatisk genereres når man refererer til en tredjeparts assembler (direkte) i prosjektet ditt, denne .refresh-filen lagrer den opprinnelige filstien til den tredjepartsfilen, hvis dll-filen under denne stien oppdateres, i motsetning til når prosjektet genereres, vil assemblyen bli oppdatert og endret i henhold til denne adressen. Uten denne filen vil ikke VS kunne oppdatere den refererte assemblyen i henhold til siste status, noe som vil føre til problemet med at assembly-versjonen er feil. En liten detalj vil føre til et stort problem, alle følg med!

En ny versjon av nettsiden ble lansert, og et alvorlig problem ble oppdaget der ett av bibliotekene ikke ble automatisk oppdatert, men en utdatert versjon ble generert automatisk.

Etter undersøkelser viste det seg å være relatert til en dll.refresh-fil i VSS.

Årsaken er enkel:

1。 Under utviklingsprosessen, når andre eksterne DLL-referanser legges til på nettsiden, genererer systemet automatisk oppdateringsfilen, og denne filen vil ikke bli generert hvis andre prosjekt-DLL-referanser legges til under denne løsningen

2。 Oppdateringsfilen spesifiserer stien som automatisk skal oppdatere dll-en, og hvis det er en bibliotekreferanse, vil den angi Dubug- eller Release-katalogen, og filen som får feil denne gangen er Debug-katalogen

3。 Utvikleren sjekket feilaktig filen inn i VSS-kodebasen

4。 Problemet er at referansebiblioteket har endret seg mange ganger etter utgivelsen av første versjon, men grensesnittet har ikke endret seg, så biblioteket genereres separat, og da oppdateres kun den tilsvarende DLL-en (Release version) for alle applikasjoner, og det har ikke vært noe problem, men når en applikasjon publiseres på nytt, på grunn av eksistensen av en oppdateringsfil i BIN-katalogen til prosjektet, oppdateres DLL-en automatisk med stien som filen angir, noe som fører til utgivelsen av den gamle versjonen av DLL (Debug-versjonen).

Problemløsning:

Slett dll.refresh-filen i appen og publiser appen på nytt

Eller endre innholdet i dll.refresh, og skrive dll-stien riktig





Foregående:Databaseskjema: Lese- og skriveseparasjon til CQRS
Neste:NPM-metoden for å sette opp og avbryte proxyer
 Vert| Publisert på 04.05.2020 20:44:32 |
Å referere til en ekstern dll-fil i VS2005 gir en filendelse kalt .refresh,
Hvis du refererer til en System.Web.Extensions.dll, vil den automatisk generere en System.Web.Extensions.dll.refresh, som inneholder den absolutte stien til denne dll-en.
Merk: Etter sletting vil ikke VS2005 automatisk oppdatere dll-filen du refererer til via filstien til bin-katalogen. Dette betyr at hvis dll-en du refererte til blir oppdatert, må du manuelt referere den på nytt.
 Vert| Publisert på 17.05.2020 11:51:33 |
prøve
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com