Advanced Services | Assemblies |
Ein Assembly ist eine Sammlung von Klassen. Diese können in einem Namensraum liegen oder auch in mehreren
verschiedenen Namensräumen. Zu einem Assembly wird diese Sammlung aber erst dann wenn sie in eine externe
Bibliothek gepackt wird und als Datei gespeichert wird. Visual Studio legt ein Assembly dann als DLL (Dynamic Link Library)
Datei an. Dieses Assembly kann dann in einem beliebigen C#-Projekt verwendet werden. Dazu muß man lediglich in
den Projekteinstellungen unter Verweise (References) den Pfad zur DLL eintragen. Dann kann man auf die
Klassen entweder über den using-Mechanismus zugreifen oder auch den Namensraum explizit angeben. Sobald man
die Referenz eingetragen hat werden die neuen Klassen von der Intellisense erkannt.
Wir merken uns also:
Ein Assembly ist eine Sammlung von Klassen in einer DLL, die in Visualstudio über
eine Referenz (Verweis) angesprochen werden kann
Falls man ein neues Projekt anlegt, geht man natürlich über
File -> New -> Project
Bei einem bestehendem Projekt markiert man den Projekteintrag im Solution Explorer
und öffnet das Kontextmenu
Add -> New Project
In dem nun erscheinenden Dialogfenster wählt man ClassLibrary aus, gibt der entstehenden
ClassLibrary evtl. einen eigenen Namen und bestätigt die Auswahl mit dem OK-Button.
Es entsteht eine Schablone mit einem Namespace und einer leeren Klasse. Die damit gebaute DLL erhält den Namen ClassLibrary1.dll, der Namespace erhält ebenfalls den Namen ClassLibrary1.
Eine Umbenennung des Namespace ist ohne weiteres möglich. Auch kann eine Library mehrere Namespaces enthalten. Im folgenden verwendet ein anderes Projekt die Library mit dem Namen ClassLibrary1. Da der enthaltene Namespace aber Library heißt braucht man ein using Library.
Will man den Namen der DLL ändern, so muß man den gewünschten Namen in den Projekteinstellungen eintragen:
Eine Umbenennung der DLL muß in den Projekteinstellungen vorgenommen werden.
Eine Umbenennung des Projektnamens wirkt nur innerhalb von Visual Studio. Hier wird ein Namespace Straub und eine Klasse Util verwendet. Sie enthält zwei einfache statische Methoden, die Konsolausgaben ermöglichen
Beim Erstellen des Projekts wird im Debug-Verzeichnis eine Datei mit dem Namen StraubLibrary.dll erstellt.
Als erstes muß eine Referenz auf das das Assembly angelegt werden
Projekt im Solution Explorer markieren -> Kontextmenu -> Add Reference (Verweis hinzufügen)
In dem nun erscheinenden Dialogfenster die Registerkarte Projects anwählen und das passende
Assembly suchen
Auch ohne using zu verwenden kann man jetzt schon auf den Inhalt der Library zugreifen indem man mit dem
Namensraum arbeitet.
Durch eine using-Anweisung erübrigt sich natürlich die Angabe des Namensraums.
Hier ist das Assembly zunächst nicht bekannt. Geht man den gleichen Weg wie oben, findet man unter
Projects keinen Eintrag. Das nächste Tab mit dem Namen "Browse" führt uns aber zur Lösung.
Hier kann man im Dateisystem eine DLL suchen und auswählen.