2016-08-01 17 views
2

Ich frage mich, wie ich eine Drittanbieter-Bibliothek in C# verwenden kann? Zum Beispiel komme ich aus der Python-Welt, in der es einfach ist, ein Drittanbieter-Modul mit einer einfachen Import-Anweisung hinzuzufügen. Wie kann ich Drittanbieter DLL oder Bibliotheken mit C# hinzufügen?Wie Sie eine Drittanbieterbibliothek in C# hinzufügen?

+0

Wenn Sie eine verwaltete DLL bereit haben, lesen Sie https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=c%23%20add%20reference. Es gibt andere Schritte, wenn Sie eine nicht-verwaltete DLL (wie ActiveX-Steuerelement) hinzufügen möchten. Siehe auch NuGet und Visual Studio für vorhandene Bibliotheken, die öffentlich verfügbar sind. – Igor

+0

Es heißt "Add Reference", und die Codezeile lautet 'using Namespace.SubNamespace;'. Siehe: https://msdn.microsoft.com/en-us/library/wkze6zky.aspx – Dan

Antwort

4

Klicken Sie in Visual Studio mit der rechten Maustaste auf den Referenzordner unter Ihrem Projekt im Projektmappen-Explorer und klicken Sie auf "Referenz hinzufügen". Fügen Sie dann die gewünschte DLL hinzu und klicken Sie auf OK. Fügen Sie anschließend oben eine oder mehrere using-Anweisungen für die entsprechenden Bibliotheksnamensbereiche hinzu.

Um ein weiteres Projekt zu Referenzen hinzuzufügen, ähnelt es Python. Klicken Sie erneut im Projektmappen-Explorer mit der rechten Maustaste auf Ihre Projektmappe und dann auf "Hinzufügen" und dann auf "Vorhandenes Projekt". Nachdem Sie das vorhandene Projekt hinzugefügt haben, wird es im Projektmappen-Explorer angezeigt. Sie können oben eine using-Anweisung mit dem Namen der relevanten Namespaces aus dem Projekt hinzufügen, auf das Sie gerade verwiesen haben.

+2

Nicht nur "was auch immer der DLL-Name ist" - die 'using' Anweisung nimmt einen * Namespace *, nicht einen * Assemblynamen *. Sie * können * gleich sein, aber keine Garantie –

+0

Jedes Mal, wenn ich es gesehen habe, sind sie gleich. Entschuldigung für die Verwirrung. –

+1

Sie haben wahrscheinlich tatsächlich :) Der 'System' Namespace ist teilweise (zusammen mit 40-70 anderen Namespaces, abhängig von Version und Edition von .NET) in einer Assembly mit dem Namen' mscorlib.dll' enthalten - kein einziger der enthaltenen Namespaces werden 'mscorlib' genannt :) –

2

Visual Studio verfügt über ein großes Tool namens NuGet, das die einfachste Möglichkeit zum Hinzufügen, Entfernen und Aktualisieren von Bibliotheken von Drittanbietern in Ihrem Projekt ist. Werfen Sie einen Blick auf this Tutorial für weitere Informationen.

+3

Dies setzt voraus, dass die Bibliothek tatsächlich ein NuGet-Paket hat. Gibt es eine Möglichkeit, externe DLLs über NuGet hinzuzufügen, wenn sie nicht für NuGet verpackt sind? – Dan

+0

Nein, so viel ich weiß, kann man nicht. NuGet arbeitet mit Paketen, die Verweise auf externe Bibliotheken enthalten. In diesem Fall müssen Sie also manuell Referenzen auf externe DLLs hinzufügen. – Alex

+0

@Dan Das ergibt für mich keinen Sinn. Wenn die Bibliothek kein NuGet-Paket enthält, können Sie sie direkt hinzufügen. Ich verstehe nicht, warum Sie NuGet dafür verwenden möchten. – svick