什么是.NET程序集?我在网上浏览了一下,我不明白这个定义。


当前回答

Visual Studio解决方案由一个或多个项目组成。例如:控制台项目可以生成程序集。程序集在逻辑上是可以交付给客户的代码块,在物理上是。exe(可执行程序)或。dll(可被其他程序重用)。

其他回答

Visual Studio解决方案由一个或多个项目组成。例如:控制台项目可以生成程序集。程序集在逻辑上是可以交付给客户的代码块,在物理上是。exe(可执行程序)或。dll(可被其他程序重用)。

在.Net中,程序集可以是:

各种可管理部件的集合,其中包含类型(或 类),资源(位图/图像/字符串/文件),命名空间, 私有或公开编译的配置文件;部署到 本地或共享(GAC)文件夹;可被他人发现 项目/程序集和;可以进行版本控制。

用更简单的术语来说:可以由. net运行时环境执行的(预编译的)代码块。. net程序由一个或多个程序集组成。

在Microsoft.Net中,程序集是代码版本安全、部署和可重用性的最小单元。

它包含:

- Assembly Identity
- Manifest
- Metadata
- MSIL Code
- Security Information
- Assembly Header

维基百科说:

In the Microsoft .NET framework, an assembly is a partially compiled code library for use in deployment, versioning and security. There are two types: process assemblies (EXE) and library assemblies (DLL). A process assembly represents a process which will use classes defined in library assemblies. .NET assemblies contain code in CIL, which is usually generated from a CLI language, and then compiled into machine language at runtime by the CLR just-in-time compiler. An assembly can consist of one or more files. Code files are called modules. An assembly can contain more than one code module and since it is possible to use different languages to create code modules it is technically possible to use several different languages to create an assembly. Visual Studio however does not support using different languages in one assembly.

如果你真的浏览过,澄清你不理解的地方会有帮助