公布.NET 框架库源代码(转)

简介:
来源: http://blog.joycode.com/scottgu/archive/2007/10/04/109100.aspx

【原文地址】Releasing the Source Code for the .NET Framework Libraries
【原文发表日期】 Wednesday, October 03, 2007 9:27 AM

我的团队一直致力实现的一件事情是,能让.NET 开发人员下载和浏览.NET 框架库的源代码,并且轻松地促成对它们的调试支持。

今天我非常高兴地宣布,我们将在今年晚些时候发布.NET 3.5 和 VS 2008时,同时提供源代码。

我们将首先提供.NET 基本类库(System, System.IO, System.Collections, System.Configuration, System.Threading, System.Net, System.Security, System.Runtime, System.Text, etc), ASP.NET (System.Web), Windows Forms (System.Windows.Forms), ADO.NET (System.Data), XML (System.Xml), 和WPF (System.Windows)的源代码(内含源文件注释)。然后我们将在之后的几个月内公布其他库的代码,包括 WCF,Workflow,和 LINQ。这些源代码将在 Microsoft Reference License (MS-RL))许可下发布。

你可以通过一个单独的安装来下载.NET 框架库源代码,这允许你在本机上以任何文本编辑器来浏览。我们也将在VS 2008内提供源代码的集成调试支持。

Visual Studio 2008的集成调试支持

VS 2008的最终版将支持配置调试器从微软拥有的web服务器上动态下载.NET 框架库调试器字符以及相关的源代码的能力。你将能够配置一次性完全下载.NET 框架库调试器字符,或按需手工获取:

当你调试 .NET应用,触发你的代码中的断点时,你现在将能看到调试器call stack包含了你应用中所用的.NET 框架库类和方法的详细文件和行数信息:

在上面的截图中,你可以看到我们对GridView1.DataBind()设置了断点,之前,根本没有办法钻入这个DataBind()方法,看它是怎么实现的。

现在在VS 2008中,你将能够按F11(单步调试),在调试器中钻入.NET 框架源码实现:

VS 2008将包括按需从微软自动获取相关的.NET框架库源代码文件的支持。这意味着,在我们启动调试器之前,上面的ASP.NET GridView和 BaseDataBoundControl类的源代码可以还没有安装在当前机器上。在我们按F11,单步调试进它们的实现时,VS可以自动地从微软下载相关的源代码,然后在IDE中打开。

通过动态地下载源代码文件,我们还可以确保相关的源代码文件与你机器上的.NET框架的特定版本相一致。譬如,你在机器上安装了GDR或服务包补丁,我们将保证下载与之相应的源代码文件。

除了单步调试进入.NET框架的代码外,我们还可以在call stack上往回走进入.NET框架的源代码。譬如,在上面的场景中,我也可以在call stack上双击System.Web.UI.Page 类的私有ProcessRequest 方法来浏览其实现:

我们也可以再往回走,进入mscorlib 程序集中的System.Threading.ThreadPool实现(该类控制运行我们页面的线程):

注意,在前面的2个屏幕截图中, VS 调试器的 "Locals" 和 "Watch" 窗口的功能在你的代码以及.NET框架代码中是完全支持的。

结语

能够访问源代码,以及.NET框架库的调试器集成对.NET 开发人员来说是非常有价值的。能够单步调试和浏览源代码应该对.NET框架库是如何实现的提供深入的理解,转而允许开发人员打造更棒的应用,更好地利用它们。

想进一步了解我们的源代码发布计划以及了解调试器集成的工作原理,请去看一下Scott HanselmanShawn Burke最近录制的这个播客。主管我的团队里源代码项目的Shawn还将在本星期的稍后发布一个非常酷的Channel9录像,展示如何使用VS 2008中的集成调试支持。

希望本文对你有所帮助,

Scott




本文转自钢钢博客园博客,原文链接:http://www.cnblogs.com/xugang/archive/2007/10/18/929253.html,如需转载请自行联系原作者

相关文章
|
1月前
|
C#
一个.NET开源、轻量级的运行耗时统计库 - MethodTimer
一个.NET开源、轻量级的运行耗时统计库 - MethodTimer
|
9天前
|
消息中间件 开发框架 监控
NET任务调度框架Hangfire使用指南
Hangfire 是一个用于 .NET 应用程序的开源任务调度框架,支持长时间运行任务、定时任务等。通过简单的安装配置,即可将任务从主线程分离,提升应用性能。支持多种数据库,提供丰富的任务类型如立即执行、延迟执行和周期性任务,并有可视化管理界面 Hangfire Dashboard。还支持安全性配置及扩展插件,如 Hangfire.HttpJob,适合各种复杂场景下的任务调度需求。
31 1
NET任务调度框架Hangfire使用指南
|
17天前
|
开发框架 .NET PHP
ASP.NET Web Pages - 添加 Razor 代码
ASP.NET Web Pages 使用 Razor 标记添加服务器端代码,支持 C# 和 Visual Basic。Razor 语法简洁易学,类似于 ASP 和 PHP。例如,在网页中加入 `@DateTime.Now` 可以实时显示当前时间。
|
28天前
|
开发框架 安全 .NET
在数字化时代,.NET 技术凭借跨平台兼容性、丰富的开发工具和框架、高效的性能及强大的安全稳定性,成为软件开发的重要支柱
在数字化时代,.NET 技术凭借跨平台兼容性、丰富的开发工具和框架、高效的性能及强大的安全稳定性,成为软件开发的重要支柱。它不仅加速了应用开发进程,提升了开发质量和可靠性,还促进了创新和业务发展,培养了专业人才和技术社区,为软件开发和数字化转型做出了重要贡献。
24 5
|
28天前
|
传感器 人工智能 供应链
.NET开发技术在数字化时代的创新作用,从高效的开发环境、强大的性能表现、丰富的库和框架资源等方面揭示了其关键优势。
本文深入探讨了.NET开发技术在数字化时代的创新作用,从高效的开发环境、强大的性能表现、丰富的库和框架资源等方面揭示了其关键优势。通过企业级应用、Web应用及移动应用的创新案例,展示了.NET在各领域的广泛应用和巨大潜力。展望未来,.NET将与新兴技术深度融合,拓展跨平台开发,推动云原生应用发展,持续创新。
30 4
|
28天前
|
开发框架 .NET C#
.NET 技术凭借高效开发环境、强大框架支持及跨平台特性,在软件开发中占据重要地位
.NET 技术凭借高效开发环境、强大框架支持及跨平台特性,在软件开发中占据重要地位。从企业应用到电子商务,再到移动开发,.NET 均展现出卓越性能,助力开发者提升效率与项目质量,推动行业持续发展。
27 4
|
28天前
|
敏捷开发 缓存 中间件
.NET技术的高效开发模式,涵盖面向对象编程、良好架构设计及高效代码编写与管理三大关键要素
本文深入探讨了.NET技术的高效开发模式,涵盖面向对象编程、良好架构设计及高效代码编写与管理三大关键要素,并通过企业级应用和Web应用开发的实践案例,展示了如何在实际项目中应用这些模式,旨在为开发者提供有益的参考和指导。
24 3
|
1月前
|
消息中间件 监控 数据可视化
基于.NET开源、功能强大且灵活的工作流引擎框架
基于.NET开源、功能强大且灵活的工作流引擎框架
|
1月前
|
开发框架 网络协议 .NET
C#/.NET/.NET Core优秀项目和框架2024年10月简报
C#/.NET/.NET Core优秀项目和框架2024年10月简报
|
1月前
|
网络协议 Unix Linux
精选2款C#/.NET开源且功能强大的网络通信框架
精选2款C#/.NET开源且功能强大的网络通信框架