ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Microsoft.NET Framework 开放代码概述

Microsoft.NET Framework 开放代码概述

原创 Linux操作系统 作者:youli_113 时间:2008-01-20 23:30:56 0 删除 编辑

【原文地址】.NET Framework Library Source Code now available  ( 韩现龙译)

【原文发表日期】 Wednesday, January 16, 2008 2:50 PM

 

 

期待已久的.NET Framework终于在本周开放代码可读权限了,微软在MS-RL协议下终于公开了.NET Framework源代码,我们只可以自由查看,不允许直接进行修改。具体来说,你现在可以查看和调试下面的.NET框架库的源代码:

 

 

  • .NET 基类库(包括 System, System.CodeDom, System.Collections, System.ComponentModel, System.Diagnostics, System.Drawing, System.Globalization, System.IO, System.Net, System.Reflection, System.Runtime, System.Security, System.Text, System.Threading等)
  • ASP.NET (System.Web, System.Web.Extensions)
  • Windows Forms (System.Windows.Forms)
  • Windows Presentation Foundation (System.Windows)
  • ADO.NET and XML (System.Data 和 System.Xml)

正在向上面的类库列表中添加其他的框架库(包括LINQ, WCF和Workflow)过程之中。在接下来的几周或者几个月之内它们将可用。

 

在Visual Studio 2008中启用参考源代码访问

 

在Visual Studio 2008中启用.NET框架库源代码访问只要几分钟就可以配置完成。Shawn Burke在这里有一篇很详细的博客,说明了如何启用源码支持的具体步骤。

如果你在配置时遇到了麻烦或者有问题的话,请在MSDN这里Reference Source Forum论坛提问。

 

调试进入.NET框架库源代码

 

在按Shawn上面的博客中的步骤配置完成之后,你就可以动态地加载.NET框架库的调试符号并且调试进入到源码之中。在你调试框架库代码的过程中,VS 2008将会从MSDN源码服务器上按需下载符号和源码文件:

开发者的注释也包括在源文件中。在上面的例子中,你可以看到Control基类中的Dispose方法的注释例子。

有时,你会看到一些注释引用了我们的缺陷/工作项跟踪数据库(bug/work-item tracking database)中以前的缺陷跟踪号码,这些号码提供了关于某个特定编码决定的额外历史信息。例如,上面的注释指出,某个特定的成员变量,为保持与框架的一个老版本的向后兼容性,不该设置成null,并且指出了因此而修正的一个向后兼容性缺陷。

 

参考许可(Reference License)

 

.NET 框架源码是在一个只读参考许可(read-only reference license)下发布的。去年十月份我们宣布将要公布源码的时候,一些人对他们查看源码的的潜在影响有些顾虑。为了澄清和对这些顾虑作一个说明,我们对许可作了一个小小的改动,特别指出这个许可不适用于在拥有和.NET框架“相同或者本质上相同的特性或者功能(the same or substantially the same features or functionality)”的非Windows平台下开发软件的开发者。如果你开发的软件是针对Windows平台的,那么你就可以查看这些源码,即使那些软件拥有和.NET框架“相同或者本质上相同的特性或者功能”。

结语

我们认为,提供源码访问和.NET框架库的调试集成对.NET开发者来说是非常有价值的。能够单步调试和查看源码对.NET框架库是如何实现的应该会提供一个更好的认识,然后使你开发出更好的应用程序,更好地应用.NET框架。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12641349/viewspace-154168/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-01-04

  • 博文量
    153
  • 访问量
    171708