当前位置: 首页>>代码示例>>C#>>正文


C# MessageBus.MatchHandlers方法代码示例

本文整理汇总了C#中MessageBus.MatchHandlers方法的典型用法代码示例。如果您正苦于以下问题:C# MessageBus.MatchHandlers方法的具体用法?C# MessageBus.MatchHandlers怎么用?C# MessageBus.MatchHandlers使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在MessageBus的用法示例。


在下文中一共展示了MessageBus.MatchHandlers方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: DebugSend

        public static void DebugSend(
            MessageBus msgBus,
            Message message,
            StringBuilder textExplanation
        )
        {
            int count_PtToPt = 0,
                count_Observer = 0,
                count_RoleEvent = 0;

            Action<HandlerInfo, Message> Msg_PtToPt = (HandlerInfo handler, Message msg) => {
                textExplanation.AppendFormat(
                    "Point-to-Point Basis: Message match  # {0}\r\n"
                    + "Message processed by handler: {1}\r\n",
                    count_PtToPt,
                    handler
                );
                count_PtToPt++;
            };
            Action<SubscriberInfo, HandlerInfo, string> Almost_PointToPoint = (SubscriberInfo sub, HandlerInfo h, string s) =>
            {
                textExplanation.AppendFormat("Point to Point near match: {0}\r\n",s);
            };

            Action<HandlerInfo, Message> Msg_Observer = (HandlerInfo handler, Message msg) => {
                textExplanation.AppendFormat(
                    "Role and Observer Basis: Message match  # {0}\r\n"
                    +"Message processed by handler: {1}\r\n",
                    count_Observer,
                    handler
                );
                count_Observer++;
            };
            Action<SubscriberInfo, HandlerInfo, string> Almost_Observer = (SubscriberInfo sub, HandlerInfo h, string s) =>
            {
                textExplanation.AppendFormat("Observer near match: {0}\r\n",s);
            };

            Action<HandlerInfo, Message> Msg_RoleEvent = (HandlerInfo handler, Message msg) => {
                textExplanation.AppendFormat(
                    "Role and Event Code Basis: Message match  # {0}\r\n"
                    + "Message processed by handler: {1}\r\n",
                    count_RoleEvent,
                    handler
                );
                count_RoleEvent++;
            };
            Action<SubscriberInfo, HandlerInfo, string> Almost_RoleEvent = (SubscriberInfo sub, HandlerInfo h, string s) =>
            {
                textExplanation.AppendFormat("Role and Event Code near match: {0}\r\n",s);
            };

            Action Msg_Unhandled = () =>
            {
                textExplanation.Append("No matches found.\r\n");
            };

            textExplanation.AppendFormat(
                "Performing match testing for message on the message bus:\r\n"
                + "Message : {0}\r\n", message
            );
            msgBus.MatchHandlers(message,
                Msg_PtToPt, Almost_PointToPoint,
                Msg_Observer, Almost_Observer,
                Msg_RoleEvent, Almost_RoleEvent,
                Msg_Unhandled
            );

            textExplanation.Append(
                "-----\r\nMatch Ended."
            );
        }
开发者ID:lokeldigital,项目名称:CoolFramework,代码行数:72,代码来源:MessageHandling.cs


注:本文中的MessageBus.MatchHandlers方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。