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


C# ICommandBus.Publish方法代码示例

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


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

示例1: ApiModule

        public ApiModule(IBookProjection books, ICommandBus commandBus)
        {
            Get["/api/Book.ListAll"] = _ => books.ListAll();
            Get["/api/Book.Load"] = _ => books.Load((Guid)Request.Query.id);
            Post["/api/Book.RegisterBook"] = _ =>
                {
                    var cmd = this.Bind<RegisterBook>();
                    cmd.Id = Guid.NewGuid();
                    commandBus.Publish(cmd);
                    return new { cmd.Id };
                };
            Post["/api/Book.CorrectBook"] = _ =>
                {
                    var cmd = this.Bind<CorrectBook>();
                    commandBus.Publish(cmd);
                    return null;
                };
            Post["/api/Book.DeleteBook"] = _ =>
                {
                    var cmd = this.Bind<DeleteBook>();
                    commandBus.Publish(cmd);
                    return null;
                };

            OnError += (ctx, ex) =>
                {
                    if (ex is AggregateException) ex = ((AggregateException)ex).Flatten().InnerExceptions[0];
                    var err = new
                        {
                            ErrorMessage = ex.Message,
                            ErrorType = ex.GetType().FullName,
                            StackTrace = ex.ToString()
                        };
                    return Response.AsJson(err, HttpStatusCode.InternalServerError);
                };
        }
开发者ID:mojamcpds,项目名称:NEventStore.Cqrs,代码行数:36,代码来源:ApiModule.cs


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