Assemblée génération a échoué - assembly Référencé ne pas avoir un nom fort. Pourquoi n'est-il pas d'autres solutions?

C'est un problème classique, qui a de nombreux solutions décrit. Cependant, aucun d'entre eux semblent fonctionner pour moi.

Je suis en utilisant le Report.NET de la bibliothèque dans une solution SharePoint. L'ajout de la Reports.dll comme une référence et la compilation des résultats dans le message d'erreur "de l'Assemblée de la génération de l'échec assembly Référencé "Rapports" ne pas avoir un nom fort." Mon projet, cependant, a une clé.snk lié dans les propriétés du projet. J'ai donc essayer de démonter, de le signer et de le remonter de la dll avec ce fichier de clé, comme il est décrit ailleurs:

C:\Users\Administrator\Documents\Visual Studio 2010\Projects\MyProj
\dll>ildasm Reports.dll /out:Reports.il

C:\Users\Administrator\Documents\Visual Studio 2010\Projects\MyProj
\dll>ilasm Reports.il /dll /resource=Reports.res /key=..\key.snk

<output removed for brevity>

Class 95
Class 96
Method Implementations (total): 1
Resolving local member refs: 0 -> 0 defs, 0 refs, 0 unresolved
Writing PE file
Signing file with strong name
Operation completed successfully

Je me retrouve avec un nouveau Reports.dll horodaté à maintenant. L'ajout de cette comme une référence à mon projet et de construction, cependant, donne le même message d'erreur qu'avant. Les propriétés de la "Rapports" de référence affiche "Nom Fort: False".

Ne pas être découragé par un peu de mal, j'ai essayer de re-signer l'assembly à l'aide de la fort de nommage de l'utilitaire:

C:\Users\Administrator\Documents\Visual Studio 2010\Projects\MyProj
\dll>sn -R Reports.dll ..\key.snk

Microsoft (R) .NET Framework Strong Name Utility  Version 4.0.30319.1
Copyright (c) Microsoft Corporation.  All rights reserved.

Assembly 'Reports.dll' successfully re-signed

Il pourrait être intéressant de noter que l'exécution de la SN utilitaire échoue avec le message d'erreur "Reports.dll ne représente pas un nommé fortement assemblée" lors de l'exécution avant le démonter/signe/remonter processus.

Toutefois, lorsqu'il est exécuté après le démontage/signature/remontage, je reçois toujours le message d'erreur d'origine lors de la reprise de l'ajouter à Visual Studio.

OriginalL'auteur Geir Smestad | 2012-02-22