浏览 .NET Framework 2.0 类型库中新增的常用功能
郑佐 2005-4-29
在 vs2005 beta1 出来的时候没有怎么去使用,现在 beta2 已经安装了,在查看 .net 2.0 类型库的时候惊奇得发现好多一直在 CSDN 社区中提的问题都有直接解决的方法了,幸喜之余就写了一些文字来列一下我比较关心的几块功能。
** 1 ** ** .串口操作 ** **
**
新增 System.IO.Ports 命名空间,提供了 SerialPort 类来实现串口操作的功能。
在 .Net Framework 1.x 中,我们需要使用另外的组件,具体要做可以参考我贴的连接: http://www.microsoft.com/china/MSDN/library/enterprisedevelopment/softwaredev/code4fun12102003.mspx ,
文章中提到使用三种方法来实现,如果需要可以下载相关组件应用到自己的项目中。
** 2 ** ** .压缩解压 ** **
**
新增 System.IO.Compression 命名空间,用来处理常用的文件压缩或解压,现在还没有怎么研究,不过看起来不错。在 .NET Framework 1.x 中,我们比较常用的是 ICSharpCode.SharpZipLib.dll ,它是 SharpDevelop 中使用的一个组件,下载地址: http://www.icsharpcode.net/OpenSource/SharpZipLib/Download.aspx ;还有一个是使用 J# 类库中的 Zip 类,相关内容可以看 http://www.microsoft.com/china/msdn/library/langtool/vcsharp/miszipcompression.mspx ;
另外,我看到 Fish 写的 CodeLib .NET 软件中使用了 Unrar.dll ,具体没有研究过用法,应该也是来处理文件压缩解压的,相关信息的连接地址看 http://www.rarlab.com/ 。
** 3 ** ** .网络处理功能增强 ** **
**
新增 System.Net.NetworkInformation 命名空间,包含了一大堆类型,里面有一个 Ping 类,不说也知道,就是来实现 ping 命令的功能。在 .Net Framework 1.x 中,我一般会使用其中一种方法来检测网络:
http://dotnet.aspx.cc/ShowDetail.aspx?id=VXMGWMHF-OJCC-4RBD-KH6X-RIJQLD17QMFW ;
http://blog.csdn.net/zhzuo/archive/2004/03/21/22024.aspx ,以及使用 System.Net.Dns 类的静态方法是否抛出异常来确认计算机连接。还有看到 .NET 2.0 对 IPv6 提供了支持,真是全面。
** 4 ** ** .使用 ** ** FTP
**
在 System.Net 中看到增加了 FtpWebRequest 和 FtpWebResponse 两个类,这次可以直接使用 Ftp 了,不需要再使用第三方的组件。在 .Net Framework 1.x 中,大多数需要通过第三方组件来做,要使用可以参考:一个 FTP Client library in C# : http://www.csharphelp.com/archives/archive9.html ;还有就是在 Rss Bandit 中使用的一个 FTP 组件,原先看过是对 Com 的 interop ,不知道新的版本是不是还用这个,具体可以看 http://www.rssbandit.org/ , Rss Bandit 是一个开源软件,下载地址 http://sourceforge.net/projects/rssbandit/ 。
** 5. ** ** 使用 ** ** SmtpClient
**
在 System.Net.Mail 命名空间中提供了对邮件操作的支持,在 .Net Framework 1.x 中会使用 System.Web.Mail 命名空间下的类,但是功能比较弱,参考的网站 http://www.systemwebmail.com/default.aspx ,也可以使用 Socket 写一个,不过对邮件协议需要有一定的了解。
** 6 ** ** .使用多媒体 ** **
**
在 System.Media 命名空间中提供了一些处理声音的类,不过好像没有看到支持视频的,要使用还是要调用 Media Player 的组件。
** 7 ** ** .使用其它新的组件 ** **
**
以后开发数据库相关程序的时候,用的最平凡的可能就是 DataGridView 了, asp.net 和 winform 各一个,目的是取代 DataGrid ,使用 DataGrid 可以参考这里: http://www.syncfusion.com/FAQ/WinForms/FAQ_c44c.asp 。
使用 DataGridView 在社区中经常提的关于 DataGrid 方面的问题许多都可以解决了,不需要再自己重写一些类或第三方的组件类达到;另外在 2.0 中提供了强大的 System.Windows.Forms.WebBrowser 控件,让 Interop.SHDocVw.dll 可以退出江湖了,呵呵。在 WindowsForm 程序开发中,可以使用一组新的 Strip 类型的控件,看起来很强大。 Asp.net2.0 提供的新东西更多。
** 8 ** ** .语言上的新增功能 ** **
**
最想要的就是泛型了,现在新建一个类都会自动添加“ using System.Collections.Generic; ”代替“ using System.Collections; ”。其它的功能也很吸引人,已经有很多文章进行了介绍,具体了解可以看 http://www.microsoft.com/china/msdn/library/langtool/vcsharp/CreElegCodAnymMeth.mspx 。