2013-04-23 11 views
5

nicht verwenden Ich habe einen Verweis auf eine externe von meinem Projekt und Lösung .dll Datei hinzugefügt, ich kann es unter dem Knoten References im Solution Explorer Fenster sehen, aber es kann es nicht finden, wenn ich versuche es in der Anweisung using dllfilename zu benutzen, also kann ich die Bibliothek grundsätzlich nicht benutzen. Wenn ich zum Objektbrowser gehe - ich finde den Namespace des Projekts und seine Klassen/Methoden, aber ich kann die referenzierte Bibliothek oder zumindest ihren Namespace oder was auch immer nicht sehen ...Kann referenzierte DLL in C#

+1

posten Sie bitte den Lösungsbaum [Bild] in Visual Studio –

+3

Sollten Sie nicht den Namespace und nicht den Dateinamen verwenden? –

+0

Welche Art von DLL ist das? Ist es überhaupt eine CLI-Assembly? Sie müssen auch den Namespace anstelle des Dll-Namens angeben. – Botz3000

Antwort

4

Es gibt einen Fehler in VS2010 ist. Die Lösung ist einfach: Projekt -> Eigenschaften -> Registerkarte Anwendung -> Ändern Sie das Zielframework auf ".NET Framework 4" anstelle des standardmäßig ausgewählten Clientprofils.

+1

Eigentlich ist das kein Fehler. Das * Clientprofil * ist eine Teilmenge der .NET Framework 4-Assemblys. Wenn die referenzierte Assembly mit dem gesamten .NET Framework 4 verknüpft ist, kann sie nicht von einem Projekt referenziert werden, das mit dem * Client-Profil * verknüpft ist, da es möglicherweise einige Assemblys verwendet, die das * Client-Profil * nicht enthält. – Carsten

4

Sie müssen nicht Verwenden Sie using dllfilename. Die korrekte Verwendung ist using NamespaceThatIsAccessibleFromDll;. Sobald Sie das getan haben, können Sie die öffentlichen Klassen verwenden, die in diesem Namensraum erscheinen.

+0

okey, ich habe den '.dll' Datei Code geöffnet und der Namespace ist' dk.ms_it' aber es ist das selbe Problem - es kann den Namespace nicht finden, also kann ich ihn nicht in die 'using' Anweisung – Syspect

+1

Sie einfügen verwendet möglicherweise nicht den richtigen Rahmen. Überprüfen Sie die Antwort von NDJ. –

+0

Es gab überhaupt kein Problem mit der Referenzierung oder was auch immer. Ich habe gerade Visual Studio neu gestartet und ich konnte bereits den Namespace der '.dll' Datei sehen. Danke trotzdem. – Syspect

1

Probieren Sie das Projekt, Eigenschaften; Wenn Sie .NET Framework 4 (Client Profile) (oder 4.5 Client Profile) in der Anwendungsregisterkarte unter Zielframework haben, ändern Sie es in die entsprechende Version ohne das Clientprofil. Das hat mich ein paar Mal erwischt - und ich bin nicht allein -

Can't see namespace