Asp.Net中using的使用的方法(转)
2013-09-11 23:16
239 查看
摘自:http://blog.sina.com.cn/s/blog_6aa9c73801018ggw.html
一、强制资源整理(实用性非常强,希望大家多多使用,比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文件中引入了不同的命名空间但是相同的类名的时候,用别名就可以解决这问题了。
一、强制资源整理(实用性非常强,希望大家多多使用,比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文件中引入了不同的命名空间但是相同的类名的时候,用别名就可以解决这问题了。
相关文章推荐
- Asp.net Mvc 的积木,谈Asp.net MVC中视图逻辑模块化和controller组件的使用方法
- ASP.NET使用Coolite.Ext.Web.dll,显示ext 未定义 的解决方法
- 使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【五】——在Web Api中实现Http方法(Put,Post,Delete)
- asp.net中cache的使用方法
- ASP.NET中使用JQuery UI Dialog致表单无法提交的解决方法
- asp.net(c#)开发中的文件上传组件uploadify的使用方法(带进度条)
- ASP.NET 使用alert弹出对话框后,CSS样式失效,字体变大的解决方法
- 使用ASP.NET AJAX异步调用Web Service和页面中的类方法(10):服务器端和客户端数据类型的自动转换:以XML方式序列化数据、小结
- asp.net中使用DatagridView的增删改方法具体实现
- asp.net 前端使用jquery $post 方法调用webservice 部署到IIS时会无法使用的问题
- [Oracle]ASP.NET中使用ODP.NET的DeriveParameters方法得到存儲過程的參數列表並傳值.
- 在 ASP.NET 中实现不同角色的用户使用不同登录界面的方法
- 浅谈ASP.NET的include的使用方法
- ASP.NET在IIS上部署使用Oracle数据库无法连接数据库解决方法
- Asp.net应用程序使用FPSE发布失败,老提示输用户名和密码解决方法
- asp.net报表解决方法(第一次使用cnblogs的blog)
- ASP.Net Ajax应用初步:使用AJAX直接调用后台方法
- ASP.NET 使用alert弹出对话框后,CSS样式失效,字体变大的解决方法
- 工作中的问题解决 -- (win2003 asp.net) Session和带页面回传的方法无法正常使用解决方案