Namespaces Versus Assemblies
An important distinction we drew in the two previous chapters is that between namespaces and assemblies. One way to approach this is by stating that namespaces provide a means to do logical partitioning of functionality, whereas assemblies are physical containers for types and members. A many-to-many mapping exists between both concepts: A single assembly may contain different namespaces, and a single namespace may be spread across different assemblies.
This configuration can sometimes lead to some confusion where one wonders what happened to his or her favorite type. In such a circumstance, two things should be checked. First of all, a
using directive for the namespace containing the type might be missing. This can ...