.net框架下的所有语言,实际上都是把代码翻译成中间语言(MSIL),然后生成标准程序集。无论是VB语言还是C#语言,它们使用的命名空间和类库都是中间语言书写的,所以能够相互操作和相互调用。从本质上讲,就是在个别语言之下加上了一个共同解释。
.net中CLR(公共语言运行时),用来运行生成MSIL,其实就是将MSIL转换成COM以执行程序。但是2011年出现的一款插件(跨平台开发框架)--XAMARIN可以实现在其他平台上使用.net framework进行软件开发。
下图是C#程序编译运行的步骤:
C#类库框架: