Impossible de charger le fichier ou l’assembly ‘xxx.Data’ Le processus ne peut pas accéder au fichier car il est utilisé par un autre processus

J’ai cette erreur depuis aujourd’hui dans un projet pour lequel j’ai travaillé pendant des mois et qui a toujours fonctionné.

J’ai essayé de nettoyer la solution et de la reconstruire, et les travaux de construction étaient parfaits. J’ai essayé de redémarrer VS et le PC et rien ne fonctionne.

Donc le problème n’est pas dans le code

Impossible de charger le fichier ou l’assembly ‘xxx.Data’ ou l’une de ses dépendances. Le processus ne peut pas accéder au fichier car il est utilisé par un autre processus. (Exception de HRESULT: 0x80070020)

Description: une exception non gérée s’est produite lors de l’exécution de la demande Web en cours. Consultez la trace de la stack pour plus d’informations sur l’erreur et son origine dans le code.

Détails des exceptions: System.IO.FileLoadException: impossible de charger le fichier ou l’assembly ‘xxx.Data’ ou l’une de ses dépendances. Le processus ne peut pas accéder au fichier car il est utilisé par un autre processus. (Exception de HRESULT: 0x80070020)

Erreur de source:

Une exception non gérée a été générée lors de l’exécution de la requête Web en cours. Les informations concernant l’origine et l’emplacement de l’exception peuvent être identifiées à l’aide de la trace de stack d’exceptions ci-dessous.

Suivi de la charge de l’assembly: Les informations suivantes peuvent être utiles pour déterminer pourquoi l’assembly ‘xxx.Data’ n’a pas pu être chargé.

=== Pre-bind state information === LOG: DisplayName = xxx.Data (Partial) WRN: Partial binding information was supplied for an assembly: WRN: Assembly Name: xxx.Data | Domain ID: 2 WRN: A partial bind occurs when only part of the assembly display name is provided. WRN: This might result in the binder loading an incorrect assembly. WRN: It is recommended to provide a fully specified textual identity for the assembly, WRN: that consists of the simple name, version, culture, and public key token. WRN: See whitepaper http://go.microsoft.com/fwlink/?LinkId=109270 for more information and common solutions to this issue. LOG: Appbase = file:///C:/Proyectos/xxx/xxx/ LOG: Initial PrivatePath = C:\Proyectos\xxx\xxx\bin Calling assembly : (Unknown). === LOG: This bind starts in default load context. LOG: Using application configuration file: C:\Proyectos\xxx\xzxx\web.config LOG: Using host configuration file: C:\Users\Esteban\Documents\IISExpress\config\aspnet.config LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config. LOG: Policy not being applied to reference at this time (private, custom, partial, or location-based assembly bind). LOG: Attempting download of new URL file:///C:/Users/Esteban/AppData/Local/Temp/Temporary ASP.NET Files/root/8076610e/464a474/xxx.Data.DLL. LOG: Attempting download of new URL file:///C:/Users/Esteban/AppData/Local/Temp/Temporary ASP.NET Files/root/8076610e/464a474/xxx.Data/xxx.Data.DLL. LOG: Attempting download of new URL file:///C:/Proyectos/xxx/xxx/bin/xxx.Data.DLL. LOG: Using application configuration file: C:\Proyectos\xxx\xxx\web.config LOG: Using host configuration file: C:\Users\Esteban\Documents\IISExpress\config\aspnet.config LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config. LOG: Policy not being applied to reference at this time (private, custom, partial, or location-based assembly bind). ERR: Failed to complete setup of assembly (hr = 0x80070020). Probing terminated. 

Comme le message l’indique, le fichier est en cours d’utilisation. Ce n’est pas une chose de Visual Studio ou .NET, c’est une chose de système d’exploitation.

Un autre programme utilise le fichier. Il peut s’agir d’un antivirus, d’une autre application en cours d’exécution ou même de Visual Studio (le débogueur maintient parfois un fichier verrouillé).

Windows vous indique quel programme est responsable du locking lorsque vous essayez de supprimer ou de renommer le fichier. Je recommanderais de le faire pour voir quel programme verrouille votre fichier.

Un autre scénario dans lequel vous verrez l’erreur «utilisée par un autre programme» est lorsque vous essayez d’activer ou de créer des migrations Entity Framework, alors que vous n’avez pas créé votre projet après avoir modifié des modèles ou un contexte de firebase database.

Il suffit de construire la solution et l’erreur disparaît.