C# 擴展類

C# 中提供一個很是實用的供能,擴展方法(Extension method)ui

擴展方法是經過額外的靜態方法擴展示有的類型。經過擴展方法,能夠對已有類型作本身想作的相關擴展。方法:定義靜態類,擴展方法也要是靜態方法,而且擴展方法的第一個參數爲要擴展的類型,必須附加一個this關鍵字。this

舉例以下: spa

擴展類:code

    public static class Extend
    {

        public static bool IsNullOrEmpty(this object i)
        {
            if (i == null) return true;

            if (i.GetType() == typeof(string))
            {
                string temp = (string)i;
                return temp.IsNullOrEmpty();
            }
            else return false;
        }

        public static Guid ToGuid(this string i)
        {
            Guid id;
            if (!Guid.TryParse(i, out id))
            {
                throw new Exception(i + " can not be converted to Guid");
            }
            return id;
        }
    }

 

擴展方法調用:blog

    public class TestExtend
    {
        public void Test()
        {
            string i = "this a world for me";
            Console.Write(i.ToGuid());
            try
            {
                Guid guid = i.ToGuid();
                Console.Write(guid.ToString());
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
    }
相關文章
相關標籤/搜索