| 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. |
|