一、强制资源整理(实用性非常强,希望大家多多使用,比try-catch-finaly效率高、好用)
用途:整理非托管资源,不受GC控制的资源。using结束后会隐式的调用Disposable要领。
资源是实现 System.IDisposable 的类或结构,它包含名为 Dispose 的单个无参数要领。
正在运用资源的代码能够调用 Dispose 以指示不再须要该资源。假如不调用 Dispose,则结尾 将因为垃圾回收而发生自动处置。
//整理非托管不受GC控制的资源
但是当对象运用using重要字的时刻,必须实现IDisposable接口。
本来 using的运用和try-catch-finaly中,在finaly代码域调用Disposable要领成效一样。留心 using无法运用多个不一样的类
try-catch-finaly用法: Class1 f = new Class1(); try{
//执行代码 }
catch(){
//异常处理 }
finally{
f.Disposable(); }
对应成using使用为:
using用法:
using (Class1 f = new Class1()) {
//执行代码 }
简单介绍这么几个吧,在使用过程中慢慢体会吧:
using (SqlConnection connection = new SqlConnection(ConnectionString)) {
//出了大括号系统会自动释放connection资源。不需要手动关闭了 }
using (SqlDataReader dr =
DB.ExecuteReaderBySql(strSql.ToString().Trim(), parameters))
{
while (dr.Read()) {
//不需要手动关闭,系统会自动在执行完大括号中的内容后自带释放。 } }
using (StreamWriter sw = new StreamWriter(Server.MapPath("/"), true, Encoding.GetEncoding("gb2312"))) {
//不需要手动关闭,系统会自动在执行完大括号中的内容后自带释放。 }
二、建立命名空间别名(这个每个程序员应该都知道就不多讲了。)
using为命名空间创建别名的用法规则为: using alias = namespace | type;
其中namespace表示创建命名空间的别名;而type表示创建类型别名。 例如,在.NET Office应用中,常常会引入Microsoft.Office.Interop.Word.dll程序集,在引入命名空间时为了避免繁琐的类型输入,我们通常为其创建别名如下:
using MSWord = Microsoft.Office.Interop.Word; 这样,就可以在程序中以MSWord来代替Microsoft.Office.Interop.Word前缀,如果要创建Application对象,则可以是这样,
而且还有一个好处就是,在一个.CS文件中引入了不同的命名空间但是相同的类名的时候,用别名就可以解决这问题了。
三、using引用命名空间(这个每个程序员应该都知道就不多讲了。)
using System;
using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI;
using System.Web.UI.WebControls;