Today in Engineer's World, we
are discussing a very important topic of C# in very easy way. Posted By- +Manish Kumar Gautam +LIVE VIAR +ASP.NET SOLUTIONS
Click imagination hunt to
see latest Blogs
Previous
– Usages of .NET Namespaces
Assembly
An Assembly is a versionable
unit of deployment of the .NET framework. Assemblies are the
means of packaging and deploying applications and components in .NET.
Assemblies can be made up of either single or multiple files. An assembly
contains metadata information, which is used by the CLR for everything from
type checking and security to actually invoking the components methods.
An assembly performs the
following functions:
1. Assembly contains code
that at run-time executes. MSIL code in a portable executable
(PE) file will not be executed if it does not have an associated assembly
manifest. Note that each assembly can have only one entry point.
2. Assembly forms a security boundary. An assembly contains several important pieces of information that can be used to decide what level of access to grant the component. An assembly is to .NET security what a protection domain is to Java security.
3. Assembly forms a type
boundary. Every type's identity includes the name of the assembly in which it
resides. A type MyTypeAssembly loaded in the scope of one assembly is not the
same as a type MyTypeAssembly loaded in the scope of another assembly.
4. When you create a .NET application, you are actually creating an assembly, which contains a manifest that describes the assembly. This manifest data contains the assembly name, its versioning information, any assemblies referenced by this assembly and their versions, a listing of types in the assembly, security permissions, its product information (company, trademark, and so on), and any custom attribute.
5. Assembly forms a version boundary. The assembly is the smallest versionable unit in the CLR; all types and resources in the same assembly are versioned as a unit. The assembly's manifest describes the version dependencies you specify for any dependent assemblies.
6. Assembly forms a
deployment unit. When an application starts, only the assemblies the
application initially calls must be present. Other assemblies, such as
localization resources or assemblies containing utility classes, can be
retrieved on demand. In this way, applications can be kept simple and thin when
first downloaded.
Assemblies can be static and dynamic. Static assemblies can include .NET Framework types (interfaces and classes) as well as resources for the assembly (bitmaps, JPEG files. resources files, and so on). Static assemblies are stored on disk in PE files. You can also use the .NET framework to create dynamic assemblies, which are run directly from memory and are not saved to disk before execution. You can save dynamics assemblies to disk after they have executed.
Some of the information used
includes what site the component was downloaded from, what zone that site was
in, (Internet, intranet, local machine, and so on) and the strong name of the
assembly. The strong name refers to an encrypted identifier that uniquely
defines the assembly and ensures that it has not been tampered with.
There are several ways to
create assemblies. You can use development tools, such as Visual Studio .NET. Visual
Studio .NET, that you have used in the past to create .dll or .exe files. You
can use tools provided in the .NET framework software Development Kit
(SDK) to create assemblies by referencing modules created in other development
environments. You can also use CLR application programming interfaces (APIs) to
create dynamic assemblies.
For any query, comment us
below.
Click imagination hunt to
see latest Blogs
Keep learning and sharing...
Thanks for sharing the information with us. Its an lovely blog. Keep sharing more and more.
ReplyDelete