Chapter 19Assemblies

WHAT’S IN THIS CHAPTER?

  • An overview of assemblies
  • Creating assemblies
  • Using application domains
  • Sharing assemblies
  • Versioning
  • Sharing assemblies between different technologies

WROX.COM CODE DOWNLOADS FOR THIS CHAPTER

The wrox.com code downloads for this chapter are found at www.wrox.com/go/procsharp on the Download Code tab. The code for this chapter is divided into the following major examples:

  • Application Domains
  • Dynamic Assembly
  • Shared Demo

WHAT ARE ASSEMBLIES?

An assembly is the .NET term for a deployment and configuration unit. This chapter discusses exactly what assemblies are, how they can be applied, and why they are such a useful feature.

You will learn how to create assemblies dynamically, how to load assemblies into application domains, and how to share assemblies between different applications. The chapter also covers versioning, which is an important aspect of sharing assemblies.

Assemblies are the deployment units of .NET applications, which consist of one or more assemblies. .NET executables, with the usual extension .EXE or .DLL, are known by the term assembly. What’s the difference between an assembly and a native DLL or EXE? Although they both have the same file extension, .NET assemblies include metadata that describes all the types that are defined in the assembly, with information about its members — methods, properties, events, and fields.

The metadata of .NET assemblies also provides information about the files that belong to ...

Get Professional C# 5.0 and .NET 4.5.1 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.