Ich habe eine C # -Lösung mit zwei Projekten: einem Dienst (dem Hauptprojekt) und einem Logger. Der Dienst verwendet Klassen aus dem Logger. Ich habe innerhalb des Serviceprojekts einen Verweis auf das Logger-Projekt hinzugefügt. Zur Entwurfszeit funktioniert die automatische Vervollständigung einwandfrei: Die Klassen des Loggers sind sichtbar, die von mir verwendeten Referenzen sind entsprechend gefärbt.
Ich baue die Lösung neu auf und es geht schief. Die Referenzen werden nicht mehr erkannt: "Der Name 'Protokollierung' ist im aktuellen Kontext nicht vorhanden 'und die Klassen sind in der automatischen Vervollständigung nicht mehr vorhanden. Durch Entfernen und erneutes Anhängen der Referenz kehre ich zum Grundzustand zurück, in dem die Bezeichner für die automatische Vervollständigung sichtbar sind.
Ich habe neu gestartet, alle Caches geleert und sichergestellt, dass dies die einzige Instanz von VS 2010 ist, die auf meinem Computer ausgeführt wird.
Gibt es etwas Offensichtliches (offensichtlich), das mir fehlt?
Stellen Sie sicher, dass beide Projekte hier dieselbe Ziel-Framework-Version haben: Klicken Sie mit der rechten Maustaste auf Projekt -> Eigenschaften -> Anwendung (Registerkarte) -> Ziel-Framework
Stellen Sie außerdem sicher, dass der Projekt "Logger" (den Sie in das Hauptprojekt aufnehmen möchten) den Ausgabetyp "Klassenbibliothek" hat: Klicken Sie mit der rechten Maustaste auf Projekt -> Eigenschaften -> Anwendung (Registerkarte) -> Ausgabetyp
Erstellen Sie abschließend die Lösung neu.
quelle