在.NET1.1时代,在对数据进行不确定的操作的时候,一般都是采用try-catch-finally这种方法来处理,
在try语句块内,进行我们的数据操作,然后在catch内捕获异常.

但是在2.0里,很多地方我们可以不用 try这种语句块的方式,因为2.0已经新增了一些其它的方法.

比如说我们在进行数据类型转换的时候,

旧的方法

 1int i;
 2try
 3{
 4   i = Convert.ToInt32(Request.Params["id"]);
 5}

 6catch (Exception ex)
 7{
 8   //Response.Write("出错原因:" + ex.Message;);
 9   i = 0;   //设置一个默认值
10}


新的方法

1int i;
2if (!Int32.TryParse(Request.Params["id"],out i))
3{
4   i = 1;
5}

还有2.0里新增的Dictionary对象的一个方法TryGetValue

1string str;
2Dictionary<intstring> dict = new Dictionary<intstring>();
3dict.Add(1,"string");
4if (!dict.TryGetValue(2out str))
5{
6  str = "text";
7}

8

看出来没有?第一个最明显的区别就是代码更加精简啦,其实这倒是其次的.
最主要的,新的方法返回的是一个bool值,而不是抛出异常,我们不用再去进行大量的异常处理.
TryXXX()方法如果返回true的时候,会自动把查找到的值out到之前定义的成员.
posted on 2007-06-14 17:13  Atlantis  阅读(612)  评论(1编辑  收藏  举报