Asp.Net教程,WinForm教程,Asp.Net MVC,vs2008教程,vs2010教程,Silverlight技术,源码下载,Asp.Net视频教程
全站热门标签
vs2010 Silverlight 存储过程 水晶报表 ADO.NET JavaScript LINQ AjaxPro DataGridView 面向对象 Extjs GridView XML DevExpress HTML教程 Oracle jQuery 分页 GDI+ Visual C++2010 MySQL Office2010 WPF MVC Dojo WCF4.0 VB.NET Sql2005 textbox cookie WCF WinForm Discuz!NT SQL经典语句 T-SQL checkbox ASPxGridView F# asp.net SQL VS2008新特性 DropDownList Access TreeView Ajax VS2008 页面执行时间 Flex 字符串 回调 VB2005 DataSet C#时间 ASP.NET性能优化 用户在线检测 动画
尚未分类 LINQ教程 Enterprise技术 性能优化/调试 水晶报表与打印 安全与加密 图形图像 文件处理基础教程 Web Services 内置对象 控件示例 正则表达式\采集 ADO.NET 缓存\泛型\线程 XML技术 Url重写\静态页 vs2008综合教程
当前位置: 主页 > ASP.NET教程 > 基础教程 >

ASP.Net中using 的三种用法

时间:2009-09-15 06:52来源:未知 作者:admin 点击:

1.using指令。using + 命名空间名字,这样可以在程序中直接用命令空间中的类型,而不必指定类型的详细命名空间,类似于Java的import,这个功能也是最常用的,几乎每个cs的程序都会用到。
例如:using System;
    using System.Data;

2.using语句,定义一个范围,在范围结束时处理对象。
场景:
当在某个代码段中使用了类的实例,而希望无论因为什么原因,只要离开了这个代码段就自动调用这个类实例的Dispose。
要达到这样的目的,用try...catch来捕捉异常也是可以的,但用using也很方便。
例如:

public
static DataTable GetTable(string sql, int executeTimeOut, string connStringName)
        {
            DataTable dtRet = new DataTable();
            using (SqlConnection sc = new SqlConnection(connStringName))
            {
                using (SqlDataAdapter sqa = new SqlDataAdapter(sql, sc))
                {
                    sqa.SelectCommand.CommandTimeout = executeTimeOut;
                    sqa.Fill(dtRet);                  
                    return dtRet;
                }
            }
        }


 

3.using别名。using + 别名 = 包括详细命名空间信息的具体的类型。
这种做法有个好处就是当同一个cs引用了两个不同的命名空间,但两个命名空间都包括了一个相同名字的类型的时候。当需要用到这个类型的时候,就每个地方都要用详细命名空间的办法来区分这些相同名字的类型。而用别名的方法会更简洁,用到哪个类就给哪个类做别名声明就可以了。注意:并不是说两个名字重复,给其中一个用了别名,另外一个就不需要用别名了,如果两个都要使用,则两个都需要用using来定义别名的。
例如:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using aClass = ConsoleApplication1.MyClass;
using bClass = ConsoleApplication2.MyClass;
namespace ConsoleApplication1
{
    public
class MyClass
    {
        public
override
string ToString()
        {
            return "You are in ConsoleApplication1.MyClass";
        }
    }
    class TestUsing
    {
    }
}
namespace ConsoleApplication2
{
    class MyClass 
    {
        public
override
string ToString() 
        {
            return "You are in ConsoleApplication2.MyClass";
        }
    }
}
namespace TestUsing
{
    using ConsoleApplication1;
    using ConsoleApplication2;
  
    class ClassTestUsing
    {      
        static
void Main()
        {            
            
            aClass my1 = new aClass();            
            Console.WriteLine(my1);
            bClass my2 = new bClass();
            Console.WriteLine(my2);
            Console.WriteLine("ress any key");
            Console.Read();
        }
    }
}

(责任编辑:admin)
Tags:命名空间 using
责任编辑:admin
返回顶部
------分隔线----------------------------
推荐内容
骆驼户外男 真皮磨砂日常休闲鞋 低帮 2011秋冬新款 专柜正品特价 骆驼户外男 真皮磨砂日常休闲鞋 低帮 2011秋冬新款 专柜正品特价
  • C#中Dictionary、ArrayList、Hashtable和数组Array

    C# 集合类 Array Arraylist List Hashtable Dictionary Stack Queue 1.数组是固定大小的,不能伸缩。虽然S...

  • PictureBox内的图片拖动功能

    当 PictureBox内的图片太大,超过PictureBox边框时可以用下面的方法来实现, 通过重绘来实现 : Code bool wselected = f...

  • Directory.GetCurrentDirectory和Application.

    System.IO.Directory.GetCurrentDirectory()方法用于获得应用程序当前工作目录。 System.Windows.Forms....

  • IConvertible接口

    IConvertible 接口 定义特定的方法,这些方法将实现引用或值类型的值转换为具有等效值的公共语言运行库类型。 命名空间: System 程序集: msc...

  • 将枚举类型的数据绑定到控件

    .NET Framework中的数据绑定有几个很酷的功能。你不仅可以将集合、数组、DataTable和DataView对象绑定到列表绑定(list-bound)...

  • 数组求和算法系列

    一直想写一个数组求和算法系列博客,但由于自己算法能力有限,完成不了,只能完成其中简单的部分,难的部分希望有园友愿意和我一起完成。在写这篇博客的过程中借用了别人的...

  • 细说C#构造器

    1.实例构造器和类 构造器是允许将类型的实例化为良好的状态的一种特殊方法。 当创建一个类型的实例时: 1)为实例的字段分配内存。 2)初始化对象的附加字段(类型...

  • 对象的序列化存入数据库,与反序列化

    开发过程中遇到一个问题,我想到的解决方法是将一个dictionary字典如何存如数据库,读出来的时候还是这个字典 然后接触到对象的序列化与反序列化。开始打算序列...

  • const限定修饰符用法总结(常量,指针,迭代器,函数参数,成员函数)

    const限定修饰符用法总结(常量,指针,迭代器,函数参数,成员函数)...

  • 回文算法

    回文:针对于字符串的中间位置两边对应位置相等。对于长度为n的字符串,需要比较的次数为N/2。 用2种方法对该应用实现算法如下: 1:采用字符串的substrin...

  • c# MACD算法实现

    c# MACD算法实现...

  • c#自杀程序的关键方法

    public static void TestForKillMyself() { string bat=@@echooff :tryagain del%1 if...

  • 对泛型进行反射

    今天在用反射的时候突然想到,之前从来没有对泛型对象进行反射,故决定尝试一下 首先要获取某个泛型类的Type,键入如下代码: Typet=Type.GetType...

  • C#遍历文件夹

    DirectoryInfo FileName = new DirectoryInfo( @D:\ ); 2 foreach (DirectoryInfo Nex...

  • .NET对象序列化—TimeSpan

    在 WebServices 中, TimeSpan 不能作为系统的 TimeSpan 作为参数,在客户端会生成新的 TimeSpan 类。 一、问题重现 创建一...