项目.net 4.0程序集引用没有IL。怎么样?什么?

时间:2010-04-27 09:43:41

标签: assemblies .net-4.0

有些事我不明白。今天我决定找出Sistem.Web.dll版本4.0.0.0里面的内容所以我决定找到这个程序集所在的地方。

alt text

并用反射器打开这个程序集 - 所有方法都是空的 - 然后使用7.0 SDK中的ilDasm。这就是我所看到的

alt text

经过一些研究,我发现了gac中的全功能组件。 Actualy这里

C:\的Windows \组件\ NativeImages_v4.0.30319_32 \的System.Web \ 82087f17d3b3f9c493e7261d608a6af4

它们的尺寸要大得多。 那么为什么引用不是针对gac,而是针对C:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework.NETFramework \ v4.0 \ 为什么他们里面没有IL? 它是如何运作的?

Mabe我不明白。

1 个答案:

答案 0 :(得分:1)

正如您所观察到的那样,它们是剥离了IL代码的dll。如下所述,您无法在GAC中引用assembiles,GAC也不允许您存储xml文件。

http://p3net.mvps.org/Topics/Basics/IntegratingGACWithVS.aspx

此外,这可以帮助您定位.net框架的不同版本,并在Visual Studio 2010中获得正确的智能感知。如您所知,VS 2010允许mutli目标。