32得票2回答
MediatR发布和MediatR发送

我已经尝试使用MediatR实现CQRS模式,非常喜欢应用程序的干净状态正在进行转换。在我看过和使用的所有示例中,我总是这样做 await Mediator.Send(command); 查询的情况也一样。var data = await Mediator.Send(queryObject);...

14得票3回答
MediatR库在网络上的CQRS示例中是否被过度使用?

我很难理解为什么在解释CQRS模式时,处理命令和查询时,网络上的许多示例都使用MediatR。 几乎到处都可以看到示例,其中命令和查询由MediatR处理,但我没有看到除了无需在依赖注入容器中注册每个命令或查询之外的任何好处。但是,您需要实现查询对象(继承IRequest)、查询处理程序和查询...

7得票2回答
Mediatr - 缓存失效/更新的正确位置在哪里?

这个问题源自我之前提到的关于太多接口、QCRS和Mediatr库(请求/响应)的问题。 Mediatr:减少注入依赖对象数量 我创建了大量的命令和查询,其中包括许多行为,其中一个是缓存行为,对于每个查询,在实际执行查询之前,会检查缓存中是否有值。 到目前为止,这个方法运作得很好,但是当我...

17得票3回答
使用MediatR代替服务层 - 这样做是否值得?

你认为用 MediatR 替换我的服务层或服务类可能是合理的吗?例如,我的服务类看起来像这样: public interface IEntityService<TEntityDto> where TEntityDto : class, IDto { Task<TEn...

7得票3回答
MediatR如何知道调用哪个处理程序?

我正在学习MediatR,但是我遇到了将控制器连接到处理程序的问题。 控制器: [HttpGet] public async Task<List<PersonModel>> Get() { return await _mediator.Send(new Ge...

8得票2回答
在ASP.NET Core中,我如何手动注册Mediatr handlers?

我正在使用内置容器的ASP.NET Core。 自动注册应该像这样完成: services.AddMvc(); services.AddMediatR(typeof(Startup)); 这会自动化地配置MediatR,并且在程序集中找到所有的处理程序进行注册。 但是我想手动注册我的...

8得票1回答
使用Blazor(WebAssembly)的MediatR通知 - 事件处理程序不更新UI

我正在尝试在客户端Blazor应用程序中连接MediatR,纯粹用于处理组件之间的事件通知。 事件已发布,并且它被另一个具有处理程序的组件接收,但是我无法从处理程序更新UI。 我认为原因是由MediatR调用的处理程序与UI组件使用的处理程序不是同一个实例。如果这有意义的话? 是否有人在...

17得票1回答
当使用MediatR时,一个处理程序调用另一个处理程序是否可行?

那这是不是被认为是不良实践或类似的东西呢? 我有一个通知触发器,它触发4-5个处理程序,这些处理程序又调用数据库来检索数据。每个调用也可以单独调用,因此它们本身就是请求/处理程序。 谢谢。

39得票6回答
使用ASP.NET Core DI的MediatR

我正在尝试新的ASP.NET Core,并正在创建一个API,我希望从JavaScript前端调用它。 我想使用中介者模式来减少耦合,并且我找到了Jimmy Bogard的库MediatR。 我的问题在于如何使用内置DI进行连接,我已经尝试查看示例,但是无法理解它如何绑定到启动类中的Con...

15得票4回答
清洁架构 CQRS 与 GraphQL API

我正在开发一个API服务器(ASP.NET Core)。 为了防止未来出现意大利面式代码和其他可怕的东西,我按照Clean Architecture / CQRS设计系统(使用MediatR)。 我考虑使用GraphQL代替REST作为API(Hot Chocolate GraphQL)。 在...