天天看點

List擴充方法出錯,this關鍵詞出錯,解決方案

今天因為在做項目時要經常對List<>方法提取指定數目集合,然後就想辦法為list集合寫了一個擴充方法,我是這麼寫的

namespace  System.Collections.Generic

{

    public static class ListExt

    {

        public static List<T> GetListByNumber(this List<T> a, int ix)

        {

            List<T> list = new List<T>();

            for (int j = 0; j < a.Count && j < ix; j++)

            {

                list.Add(a[j]);

            }

            return list;

        }

    }

}

但是一直報錯,說this關鍵詞錯誤,經查詢msdn的相關消息,擴充方法是.net 2.0以上才有的擴充,2.0及其以下不支援,是以不能編譯成功,但後來修改環境後還是編譯不成功,後來經調試,GetListByNumber方法後應該加上類型,應改為GetListByNumber<T>

最後的實作應該是:

        public static List<T> GetListByNumber<T>(this List<T> a, int ix)

本文轉自 tongling_zzu 51CTO部落格,原文連結:http://blog.51cto.com/tongling/1144638

繼續閱讀