mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-03-23 03:04:29 +08:00
- 将 CommandBus 重命名为 CommandExecutor 并更新相关接口 - 将 QueryBus 重命名为 QueryExecutor 并更新相关接口 - 将 AsyncQueryBus 重命名为 AsyncQueryExecutor 并更新相关接口 - 更新 ArchitectureContext 中的服务引用和错误消息 - 修改 ArchitectureServices 中的私有字段和公共属性名称 - 更新所有测试文件中的实例变量和服务引用 - 修改测试类名称以匹配新的执行器命名 - 更新状态机系统测试中的容器注册项
28 lines
1.0 KiB
C#
28 lines
1.0 KiB
C#
using GFramework.Core.Abstractions.query;
|
||
|
||
namespace GFramework.Core.query;
|
||
|
||
|
||
/// <summary>
|
||
/// QueryExecutor 类负责执行查询操作,实现 IQueryExecutor 接口。
|
||
/// 该类是密封的,防止被继承。
|
||
/// </summary>
|
||
public sealed class QueryExecutor : IQueryExecutor
|
||
{
|
||
/// <summary>
|
||
/// 执行指定的查询并返回结果。
|
||
/// 该方法通过调用查询对象的 Do 方法来获取结果。
|
||
/// </summary>
|
||
/// <typeparam name="TResult">查询结果的类型。</typeparam>
|
||
/// <param name="query">要执行的查询对象,必须实现 IQuery<TResult> 接口。</param>
|
||
/// <returns>查询执行的结果,类型为 TResult。</returns>
|
||
public TResult Send<TResult>(IQuery<TResult> query)
|
||
{
|
||
// 验证查询参数不为 null,如果为 null 则抛出 ArgumentNullException 异常
|
||
ArgumentNullException.ThrowIfNull(query);
|
||
|
||
// 调用查询对象的 Do 方法执行查询并返回结果
|
||
return query.Do();
|
||
}
|
||
}
|