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


C# IMediator.Publish方法代码示例

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


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

示例1: Initialise

        // should be called when parent is first created.
        public virtual Parent Initialise(IMediator mediator)
        {
            if (mediator == null) throw new ArgumentNullException(nameof(mediator));

            this.ActivationKey = Guid.NewGuid().ToString();
            mediator.Publish(new NewParentCreatedEvent(this));
            return this;
        }
开发者ID:sharparchitecture,项目名称:Sharp-Architecture,代码行数:9,代码来源:Parent.cs

示例2: Run

        public static async Task Run(IMediator mediator, TextWriter writer)
        {
            await writer.WriteLineAsync("Sample mediator implementation using send, publish and post-request handlers in sync and async version.");
            await writer.WriteLineAsync("---------------");

            await writer.WriteLineAsync("Sending Ping...");
            var pong = await mediator.Send(new Ping { Message = "Ping" });
            await writer.WriteLineAsync("Received: " + pong.Message);

            await writer.WriteLineAsync("Sending Ping async...");
            var response = await mediator.Send(new PingAsync { Message = "Ping" });
            await writer.WriteLineAsync("Received async: " + response.Message);

            await writer.WriteLineAsync("Publishing Pinged...");
            await mediator.Publish(new Pinged());

            await writer.WriteLineAsync("Publishing Pinged async...");
            await mediator.Publish(new PingedAsync());
        }
开发者ID:jbogard,项目名称:MediatR,代码行数:19,代码来源:Runner.cs

示例3: Run

        public static void Run(IMediator mediator, TextWriter writer)
        {
            writer.WriteLine("Sample mediator implementation using send, publish and post-request handlers in sync and async version.");
            writer.WriteLine("---------------");
            
            writer.WriteLine("Sending Ping...");
            var pong = mediator.Send(new Ping { Message = "Ping" });
            writer.WriteLine("Received: " + pong.Message);

            writer.WriteLine("Sending Ping async...");
            var response = mediator.SendAsync(new PingAsync { Message = "Ping" });
            Task.WaitAll(response);
            writer.WriteLine("Received async: " + response.Result.Message);

            writer.WriteLine("Publishing Pinged...");
            mediator.Publish(new Pinged());

            writer.WriteLine("Publishing Pinged async...");
            var publishResponse = mediator.PublishAsync(new PingedAsync());
            Task.WaitAll(publishResponse);
        }
开发者ID:BredStik,项目名称:MediatR,代码行数:21,代码来源:Runner.cs

示例4: SendMessage

        public virtual void SendMessage(string text, IMediator mediator)
        {
            if (mediator == null) throw new ArgumentNullException(nameof(mediator));

            this.Messages.Add(new Message(DateTime.Now.Date, text, this));
            this.RemoveOldMessages();

            mediator.Publish(new SendMessageEvent(this, text));
        }
开发者ID:sharparchitecture,项目名称:Sharp-Architecture,代码行数:9,代码来源:User.cs


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