web-dev-qa-db-fra.com

Impossible de charger le fichier ou l'assembly HRESULT: 0x80131515 (lors de l'ajout d'un contrôleur au projet MVC comportant des références d'assembly sur un lecteur réseau)

J'ai vu ceci: VSTS 2010 SGEN: erreur: impossible de charger le fichier ou l'assembly (exception de HRESULT: 0x80131515) et aucune des réponses ne fonctionne. Il n'apparaît pas non plus lorsque je construis ou quoi que ce soit. Je peux exécuter le projet correctement, cela se produit lorsque j'essaie d'ajouter un contrôleur basé sur un modèle de structure d'entité:

controller settings

Puis j'obtiens cette erreur:

error message

Tous les fichiers de projet se trouvent sur mon partage réseau car c’est là que se trouvent Mes documents pour notre travail. Voici ce que j'ai essayé:

1) Activation, désactivation et auto de l’assemblage de sérialisation de générateur dans les paramètres de projet.

2) Ajout de sgen.exe.config à Outils C:\Program Files\Microsoft SDK\Windows\v7.0A\bin\NETFX 4.0 avec le code suivant:

<configuration>
 <runtime>
   <loadFromRemoteSources enabled="true" />
 </runtime>
</configuration>

3) J'ai essayé de débloquer les assemblages, mais je n'avais pas d'option de déblocage dans l'onglet Propriétés .no unblock option

Aucune de ces solutions ne fonctionne. Quelqu'un at-il une idée de la façon dont je peux résoudre ce problème ??? Cette erreur se produit pour tout assemblage personnalisé de nuget ou pour mes propres projets en raison de leur emplacement sur l'espace réseau, mais uniquement lors de l'ajout d'un contrôleur EF basé sur un modèle. Je peux construire et exécuter le programme bien.

69
SventoryMang

Essayez d’ajouter votre <loadFromRemoteSources enabled="true" /> à C:\[Visual Studio 2010 Install Dir]\Common7\IDE\devenv.exe.config directement sous <runtime> et voyez si cela vous aidera :)

82
hawkke

J'avais juste besoin de cliquer sur "Débloquer" dans la boîte de dialogue des propriétés du fichier dans l'Explorateur Windows.

117

Juste comme une solution supplémentaire, nous avons eu un problème comme celui-ci récemment. La solution s'est avérée être de débloquer les fichiers, mais avec une torsion. Nous avons copié les fichiers sur notre serveur dans un fichier Zip. Lorsque nous avons extrait les fichiers de l’archive Zip, ils étaient déjà bloqués. Nous n'avons pas pu débloquer les fichiers. Nous cliquions sur le bouton de déblocage, puis sur OK et, lorsque nous examinions les propriétés, elles étaient toujours bloquées.

Ce que nous devions faire, c'est supprimer tous les fichiers bloqués, débloquer le fichier Zip source et puis extraire les fichiers. À ce stade, les fichiers précédemment bloqués étaient débloqués et l'application fonctionnait correctement. J'espère que cela aidera quelqu'un à éviter certaines frustrations.

EDIT: Je pense que vous devez également exécuter Windows Explorer en tant qu'administrateur pour pouvoir débloquer des fichiers.

10
BardMorgan

Ce problème provient du fait que certains fichiers requis se trouvent sur un "emplacement non approuvé", tel que le réseau ou un emplacement partagé (même sur le même ordinateur). Si l'emplacement se trouve sur le même ordinateur, vous pouvez utiliser l'option de ligne de commande subst. 

9
Mbeware

Ces solutions n'ont pas fonctionné pour moi non plus.

Dans mon cas, j'accédais à des fichiers sur un lecteur réseau mappé. La solution pour moi consistait à ajouter mon adresse IP réseau en tant que lecteur de confiance en procédant comme suit:

  1. Panneau de contrôle
  2. Centre de réseau et partage
  3. Options Internet (en bas à gauche de la fenêtre)
  4. Onglet Sécurité
  5. Sélectionnez "Intranet local"
  6. Cliquez sur le bouton "Sites"
  7. Cliquez sur le bouton "Avancé"
  8. Ajoutez l'adresse IP de votre lecteur réseau à la zone.

Je ne sais pas ce qui a fait que cela fonctionne par rapport à toutes les autres options, mais c’est ce qui a résolu le problème pour moi. Tous les projets et solutions sont maintenant construits sans aucun problème.

8
brendo234

J'ai vu d'autres forums sur ce problème, et voici la solution que quelqu'un a publiée: sur la propriété du projet contenant l'assembly DLL qui ne se chargerait pas, accédez au paramètre de génération, dit "Generate serialization Assembly:", la valeur par défaut est Auto. Réglez cela sur Off. Votre solution devrait alors construire OK. 

Cela m'est arrivé lorsque j'avais l'API dans une solution de formulaire Web avec plusieurs projets. Cela a fonctionné correctement avec une solution à projet unique MVC.

8
Yogi

Aucune de ces solutions n'a fonctionné pour moi. Au lieu de cela, j'ai trouvé le chemin en faisant sgen.exe.config via https://stackoverflow.com/a/3407750/516512

2
Farshid
  1. Je devais juste cliquer sur "Débloquer" dans la boîte de dialogue des propriétés du fichier. 

  2. Veuillez vérifier si votre fichier est en lecture seule, puis décochez-le et passez à la première étape (avant de perdre plus de temps :)

2
avulosunda

Les autres réponses ici m'ont aidé à comprendre ce problème dans PowerShell. Exécutez Unblock-File <filename> pour autoriser son accès au script en cours d'exécution.

0
Andacious

Essayez de débloquer le fichier desbloquer .

Cela a résolu mon problème.