最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#委托方法Func()中GetInvocationList()方法的用法介紹

 更新時(shí)間:2022年01月14日 08:47:19   作者:癡者工良  
這篇文章介紹了C#委托方法Func()中GetInvocationList()方法的用法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

在日常使用委托時(shí),有以下常用方法

方法名稱說(shuō)明
 Clone  創(chuàng)建委托的淺表副本。
 GetInvocationList  按照調(diào)用順序返回此多路廣播委托的調(diào)用列表。
 GetMethodImpl  返回由當(dāng)前的 MulticastDelegate 表示的靜態(tài)方法。
 GetObjectData  用序列化該實(shí)例所需的所有數(shù)據(jù)填充 SerializationInfo 對(duì)象。
 MemberwiseClone  創(chuàng)建當(dāng)前 Object 的淺表副本。
 RemoveImpl  調(diào)用列表中移除與指定委托相等的元素

GetInvocationList() 的用途

當(dāng)委托有多個(gè)返回值時(shí)

當(dāng)你編寫一個(gè) delegate委托 或 Func<>泛型委托 ,并為實(shí)例綁定多個(gè)方法時(shí),每個(gè)方法都有一個(gè)返回值??赡軙?huì)遇到這種情況:

class Program
    {
        public static string a(string str)
        {
            Console.WriteLine("方法a");
            return str+"方法a";
        }
        public static string b(string str)
        {
            Console.WriteLine("方法b");
            return str + "方法b";
        }
        public static string c(string str)
        {
            Console.WriteLine("方法c");
            return str + "方法c";
        }
        static void Main(string[] args)
        {
            Func<string, string> func=a;
            func += b;
            func += c;
            Console.WriteLine(func("測(cè)試"));
            Console.ReadKey();
        }

    }

調(diào)用委托后,只能獲取到最后一個(gè)調(diào)用方法的返回值。

使用 GetInvocationList()

GetInvocationList() 能夠返回 這個(gè)委托的方法鏈表。

通過(guò)使用循環(huán),把每個(gè)方法順序調(diào)用一次,每次循環(huán)中都會(huì)產(chǎn)生當(dāng)前調(diào)用方法的返回值。

class Program
{
    public static string a(string str)
    {
        Console.WriteLine("方法a");
        return str+"方法a";
    }
    public static string b(string str)
    {
        Console.WriteLine("方法b");
        return str + "方法b";
    }
    public static string c(string str)
    {
        Console.WriteLine("方法c");
        return str + "方法c";
    }
    static void Main(string[] args)
    {
        Func<string, string> func=a;
        func += b;
        func += c;
        var funclist = func.GetInvocationList();
        foreach (Func<string, string> f in funclist)
        {
            Console.WriteLine(f("測(cè)試"));
        }
        Console.ReadKey();
    }

相當(dāng)于把委托里順序調(diào)用的方法分離成一個(gè)列表,通過(guò)循環(huán)調(diào)用,循環(huán)獲取。

以上所述是小編給大家介紹的C#委托方法Func()中GetInvocationList()方法的用法,希望對(duì)大家有所幫助。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • .Net?Core部署Docker容器

    .Net?Core部署Docker容器

    這篇文章介紹了.Net?Core部署Docker容器的方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-01-01
  • ASP.NET?Core中的wwwroot文件夾

    ASP.NET?Core中的wwwroot文件夾

    這篇文章介紹了ASP.NET?Core中的wwwroot文件夾,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-02-02
  • C#控件命名規(guī)范

    C#控件命名規(guī)范

    C#控件命名規(guī)范,遵守規(guī)范有利于代碼的可維護(hù)性。
    2010-09-09
  • .net6引入autofac框架

    .net6引入autofac框架

    這篇文章介紹了.net6引入autofac框架的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-12-12
  • ABP框架的體系結(jié)構(gòu)及模塊系統(tǒng)講解

    ABP框架的體系結(jié)構(gòu)及模塊系統(tǒng)講解

    ABP框架是基于ASP.NET的Web開(kāi)發(fā)框架,不過(guò)它遵循一種名為DDD(領(lǐng)域驅(qū)動(dòng)設(shè)計(jì))的設(shè)計(jì)模式原則,接下來(lái)我們就來(lái)看一下ABP框架的體系結(jié)構(gòu)及模塊系統(tǒng)講解
    2016-06-06
  • ASP.NET Core服務(wù)生命周期

    ASP.NET Core服務(wù)生命周期

    這篇文章介紹了ASP.NET Core中的服務(wù)生命周期,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • 收藏的asp.net文件上傳類源碼

    收藏的asp.net文件上傳類源碼

    收藏的asp.net文件上傳類源碼...
    2007-03-03
  • ASP.NET MVC使用區(qū)域(Area)功能

    ASP.NET MVC使用區(qū)域(Area)功能

    這篇文章介紹了ASP.NET MVC使用區(qū)域(Area)功能的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • ABP框架的基礎(chǔ)配置及依賴注入講解

    ABP框架的基礎(chǔ)配置及依賴注入講解

    這篇文章主要介紹了ABP框架的基礎(chǔ)配置及依賴注入講解,是ABP框架上手使用的基本,要的朋友可以參考下
    2016-06-06
  • ABP基礎(chǔ)架構(gòu)深入探索

    ABP基礎(chǔ)架構(gòu)深入探索

    這篇文章主要介紹了ABP基礎(chǔ)架構(gòu)深入探索,為了了解應(yīng)用程序是如何配置和初始化,本文將探討ASP.NET?Core和ABP框架最基本的構(gòu)建模塊
    2022-05-05

最新評(píng)論

淮滨县| 榆社县| 四平市| 丹寨县| 溧水县| 许昌市| 夹江县| 花莲县| 深州市| 利津县| 通城县| 昭通市| 海林市| 桓台县| 克拉玛依市| 象州县| 三台县| 绥江县| 舟山市| 克山县| 招远市| 呼图壁县| 开鲁县| 剑川县| 锦屏县| 新兴县| 吉首市| 泉州市| 尚志市| 资中县| 河西区| 勐海县| 二手房| 嵩明县| 登封市| 运城市| 宁都县| 乌鲁木齐市| 勐海县| 嘉义市| 宜黄县|