Ich habe 2 Projekte in meiner Lösung:
- Assembly (Basisbibliothek)
- Testbaugruppe (NUnit)
Ich hatte die Testversammlung im ersten Projekt als Versammlung der Freunde deklariert:
[assembly: InternalsVisibleTo ("Company.Product.Tests")]
Alles funktionierte einwandfrei, bis mir klar wurde, dass ich vergessen habe, die Lösung zum Signieren meiner Baugruppen einzurichten. Erstellen Sie also eine snk-Datei und richten Sie das Visual Studio-Projekt so ein, dass die erste Assembly (Basisbibliothek) signiert wird. Wenn ich jetzt das erste Projekt kompiliere, wird folgende Fehlermeldung angezeigt:
Die Freundschafts-Assembly-Referenz 'Company.Product.Tests' ist ungültig. Assemblys mit starkem Namen müssen in ihren InternalsVisibleTo-Deklarationen einen öffentlichen Schlüssel angeben.
Ich habe versucht, den öffentlichen Schlüssel mit dem Dienstprogramm sn aus meiner snk-Datei zu extrahieren, aber es wird eine drahtgebundene Binärdatei generiert, deren Verwendung ich nicht sicher bin. Wie kann ich das Problem beheben?