Was ist der Unterschied zwischen einer Assembly und einer DLL? Sollte beim Senden des Codes an einen entfernten Client eine DLL-Datei oder eine Assembly gesendet werden (wenn eine direkte TCP-Verbindung zwischen den beiden besteht)?
Antworten
Zu viele Anzeigen?Eine Assembly ist die "minimale Einheit für die Bereitstellung" von .NET. Normalerweise entspricht eine Assembly einer einzigen Datei, aber das muss nicht sein - Sie können mehrere Dateien haben, von denen eine die Master-Datei ist, die weiß, wo alle anderen Teile sind.
Einzeldatei-Assemblies sind normalerweise DLLs oder EXE-Dateien. Wenn Sie eine normale Klassenbibliothek haben und diese nur an die andere Seite senden wollen, ist die DLL das Richtige für Sie. Über kompliziertere Szenarien würde ich mir erst dann Gedanken machen, wenn sie auftauchen :)
Nun, eine .NET dll ist eine Assembly, aber auch .NET exe's können Assemblies sein, was bedeutet, dass alle .NET dlls Assemblies sind, aber das Gegenteil ist nicht der Fall.
Sie sollten keinen eigentlichen Code an einen Kunden senden. Vielmehr sollten Sie die Typdefinitionen auf beiden Seiten (Client und Server) haben und die serialisierten Instanzen zwischen den beiden.
Eine Assembly ist im Grunde eine Datei, die den MSIL-Code und die Metadaten enthält. Sie ist die kleinste Einheit für die Bereitstellung von .NET-Anwendungen. Eine Assembly in .NET hat 2 Erweiterungen (.exe und .dll)
dll : dynamische Verknüpfungsbibliothek. Wir können also sagen, dass eine dll eine Baugruppe ist, aber eine Baugruppe muss nicht immer eine dll sein.
Mit anderen Worten: dll ist eine Art von Baugruppe
Eine Assembly ist eine Datei, die den kompilierten Code enthält. Es gibt zwei Arten von Assemblies. Wenn Sie Ihr C#-Programm kompilieren, erstellen Sie eine Assembly. Ausführbare Dateien (gelegentlich auch "Prozess-Assemblies" genannt) haben die Dateierweiterung EXE. Alle Programme in unserem Buch sind als ausführbare Dateien kompiliert. Das sind die Assemblies, die Sie ausführen können; Sie wissen schon, EXE-Dateien, auf die Sie doppelklicken und sie ausführen können. Es gibt auch Bibliotheks-Assemblies, die die Dateierweiterung DLL haben. DLL steht für Dynamic Link Library . Sie werden oft als Klassenbibliotheken bezeichnet, weil sie Klassen enthalten, die Sie in Ihren Programmen verwenden können.
-
Dll-Projekt unabhängig.
-
Montage ist projektspezifisch.
-
Eine Assembly ist eine Sammlung von einer oder mehreren Dateien, eine davon DLL oder EXE.
-
DLL enthält Bibliothekscode, der von jedem unter Windows laufenden Programm verwendet werden kann. Eine DLL kann entweder strukturierte oder objektorientierte Bibliotheken enthalten.
-
Eine DLL-Datei kann nahezu unendlich viele mögliche Einstiegspunkte haben.
-
Assembly in bin kann entweder starken/schwachen Namen haben und Assembly in GAC sollte starken Namen haben.
- See previous answers
- Weitere Antworten anzeigen
0 Stimmen
de.wikipedia.org/wiki/Dynamische-Link-Bibliothek y de.wikipedia.org/wiki/.exe