1.

What Is The Difference Between A Private Assembly And A Shared Assembly?

Answer»

The terms 'private' and 'shared' refer to how an assembly is deployed, not any intrinsic attributes of the assembly.

A private assembly is normally used by a single application, and is STORED in the application's directory, or a sub-directory BENEATH. A shared assembly is intended to be used by multiple APPLICATIONS, and is normally stored in the global assembly cache (GAC), which is a central repository for ASSEMBLIES. (A shared assembly can also be stored outside the GAC, in which case each application must be pointed to its location via a codebase entry in the application's CONFIGURATION file.) The main advantage of deploying assemblies to the GAC is that the GAC can support multiple versions of the same assembly side-by-side.

Assemblies deployed to the GAC must be strong-named. Outside the GAC, strong-naming is optional.

The terms 'private' and 'shared' refer to how an assembly is deployed, not any intrinsic attributes of the assembly.

A private assembly is normally used by a single application, and is stored in the application's directory, or a sub-directory beneath. A shared assembly is intended to be used by multiple applications, and is normally stored in the global assembly cache (GAC), which is a central repository for assemblies. (A shared assembly can also be stored outside the GAC, in which case each application must be pointed to its location via a codebase entry in the application's configuration file.) The main advantage of deploying assemblies to the GAC is that the GAC can support multiple versions of the same assembly side-by-side.

Assemblies deployed to the GAC must be strong-named. Outside the GAC, strong-naming is optional.



Discussion

No Comment Found