什么是.NET程序集?我在网上浏览了一下,我不明白这个定义。
当前回答
在。net中,当我们编译源代码时,会在Visual Studio中生成程序集。程序集由清单和IL(中间语言)两部分组成。清单包含程序集元数据意味着程序集的版本要求、安全标识、组成程序集的所有文件的名称和散列。IL包含类、构造函数、主方法等信息。
其他回答
Visual Studio解决方案由一个或多个项目组成。例如:控制台项目可以生成程序集。程序集在逻辑上是可以交付给客户的代码块,在物理上是。exe(可执行程序)或。dll(可被其他程序重用)。
程序集是.net应用程序的最小部署单元。 它可以是一个dll或exe。 主要有两种类型:
私人组装: dll或exe只是一个应用程序的唯一属性。它通常存储在应用程序根文件夹中 公共/共享组装: 它是一个可以同时被多个应用程序使用的dll。共享程序集存储在GAC中,即全局程序集缓存。
听起来困难吗?Naa…… GAC就是C:\Windows\Assembly文件夹,在这里您可以找到安装在PC上的所有软件的公共程序集/dll。
还有第三种也是最不为人知的装配类型:卫星装配。 附属程序集只包含静态对象,如图像和应用程序所需的其他非可执行文件。
程序集是构成逻辑功能单元的类型和资源的集合。.NET Framework中的所有类型都必须存在于程序集中;公共语言运行库不支持程序集之外的类型。每次使用Visual Basic . net创建Microsoft Windows®应用程序、Windows服务、类库或其他应用程序时,您都在构建单个程序集。每个程序集都存储为.exe或.dll文件。
来源:https://msdn.microsoft.com/en-us/library/ms973231.aspx#assenamesp_topic4
对于像我这样有Java背景的人来说,希望下面的图表能够阐明概念
程序集就像jar文件(包含多个.class文件)。您的代码可以引用现有的程序集,或者您的代码本身可以作为程序集发布,以供其他代码引用和使用(您可以将其视为Java中的jar文件,可以添加到项目依赖项中)。
最后,程序集是可以在任何安装了CLR的操作系统上运行的编译代码。这就相当于说.class文件或捆绑的jar可以在任何安装了JVM的机器上运行。
在。net中,当我们编译源代码时,会在Visual Studio中生成程序集。程序集由清单和IL(中间语言)两部分组成。清单包含程序集元数据意味着程序集的版本要求、安全标识、组成程序集的所有文件的名称和散列。IL包含类、构造函数、主方法等信息。
汇编是. net框架编程的基本部分。 它包含CLR在可移植可执行文件中执行MSIL(Microsoft中间语言)代码的代码,如果它没有关联的程序集清单,将不会执行。
推荐文章
- 实体框架核心:在上一个操作完成之前,在此上下文中开始的第二个操作
- 如何为构造函数定制Visual Studio的私有字段生成快捷方式?
- 为什么Visual Studio 2015/2017/2019测试运行器没有发现我的xUnit v2测试
- 如何使用JSON确保字符串是有效的JSON。网
- AppSettings从.config文件中获取值
- 通过HttpClient向REST API发布一个空体
- 如何检查IEnumerable是否为空或空?
- 自动化invokerrequired代码模式
- 没有ListBox。SelectionMode="None",是否有其他方法禁用列表框中的选择?
- 在c#代码中设置WPF文本框的背景颜色
- 在c#中,什么是单子?
- c#和Java中的泛型有什么不同?和模板在c++ ?
- c#线程安全快速(est)计数器
- 如何将此foreach代码转换为Parallel.ForEach?
- 如何在iis7应用程序池中设置。net Framework 4.5版本