龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > asp.net编程 >

C#中代码重构方法例子

时间:2009-12-21 11:47来源:未知 作者:admin 点击:
分享到:
自从 C#3.0 的扩展方法出来后,在我做的框架里的曾经的类似 XXXUtil 的类,全部可以用扩展方法来实现了。而且原来的调用方式依然兼容。举例来说: public static Object [] ArrayListToObjectAr

      自从C#3.0的扩展方法出来后,在我做的框架里的曾经的类似XXXUtil的类,全部可以用扩展方法来实现了。而且原来的调用方式依然兼容。举例来说:

public static Object[] ArrayListToObjectArray(this ArrayList al)

其实,我就在方法要扩展的对象加this,而我本身我的类StringUtil本身又是static的,所以两种调用方式兼容。

用法一:(注意,这是扩展方法用法)

[TestMethod]
public TestResult Test() {

var al = new ArrayList {"Lihua", 26};

var s = al.ArrayListToStringArray();

if (s.Length == 2 && s[0] == "Lihua" && s[1] == "26")  {
        return TestResult.Pass;
 
}

                return TestResult.Fail;
}

用法二:(原始用法)

[TestMethod]
public TestResult Test() {

var al = new ArrayList {"Lihua", 26};

var s = StringUtil.ArrayListToStringArray(al);

if (s.Length == 2 && s[0] == "Lihua" && s[1] == "26") {
           return TestResult.Pass;
}
return TestResult.Fail;

       }

 

精彩图集

赞助商链接