Asp.Net Core6.0中MediatR的应用CQRS( 二 )

来看一下调用
using MediatR;using Microsoft.Extensions.DependencyInjection;using Mrdiator.Query;using Newtonsoft.Json;using System.Net.Http;using System.Reflection;//实例化一个ServiceCollectionIServiceCollection services = new ServiceCollection();//添加当前的程序集MediatR会扫描当前的程序集//services.AddMediatR(typeof(Program).Assembly);services.AddMediatR(Assembly.GetExecutingAssembly());//构建一个serviceProvidervar serviceProvider = services.BuildServiceProvider();//从容器中获取mediatorvar mediator = serviceProvider.GetService<IMediator>();//执行命令var result =await mediator.Send(new GetInfoQuery(18,"wyy",DateTime.Now));

Asp.Net Core6.0中MediatR的应用CQRS

文章插图
同样我们启动程序也打印了我们的输出 。
 b.IRequest:无返回值的栗子
【Asp.Net Core6.0中MediatR的应用CQRS】using MediatR;using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace Mrdiator.Query{    /// <summary>    /// 命令查询类--无返回值    /// </summary>    internal class GetInfoQuery2 : IRequest    {        public GetInfoQuery2(int age, string name, DateTime nowTime)        {            Age = age;            Name = name;            NowTime = nowTime;        }        public int Age { get; set; }        public string Name { get; set; }        public DateTime NowTime { get; set; }    }    /// <summary>    /// 命令处理类1-----继承AsyncRequestHandler 实现抽象方法 Handle    /// </summary>    internal class GetInfoQuery2_2Handller : AsyncRequestHandler<GetInfoQuery2>    {        protected override Task Handle(GetInfoQuery2 request, CancellationToken cancellationToken)        {            Console.WriteLine("GetInfoQuery2_2Handller");            return Task.CompletedTask;        }    }    /// <summary>    /// 命令处理类2-----IRequestHandler 实现接口方法 Handle    /// </summary>    internal class GetInfoQuery2Handller : IRequestHandler<GetInfoQuery2>    {        public Task<Unit> Handle(GetInfoQuery2 request, CancellationToken cancellationToken)        {            Console.WriteLine("GetInfoQuery2Handller");            return Task.FromResult(new Unit());        }    }}

经验总结扩展阅读