views:

54

answers:

1

There is something I don't understand. Today I desided to find out what is inside Sistem.Web.dll version 4.0.0.0 So I decided to find the place where this assembly located.

alt text

and opened this assembly with reflector - all methods were empty - and then with ilDasm from 7.0 SDK. This what I saw

alt text

After some research I've found fullfeatured assemblies in gac. Actualy here

C:\Windows\assembly\NativeImages_v4.0.30319_32\System.Web\82087f17d3b3f9c493e7261d608a6af4

They are much larger in size. So why does references goes not to the gac, but to the C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0\ Why don't they have IL inside? How does it works?

Mabe I don't understand something.

+1  A: 

As you observed, they are dlls with stripped off IL code. As described below, you cannot reference assembiles in the GAC and the GAC does not allow you to store xml files.

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

In addition, this helps you to target different versions of the .net framework and get the right intellisense in Visual studio 2010. VS 2010 as you know allows mutli targetting.

Raj Kaimal