using GFramework.Core.Abstractions.query; namespace GFramework.Core.query; /// /// QueryExecutor 类负责执行查询操作,实现 IQueryExecutor 接口。 /// 该类是密封的,防止被继承。 /// public sealed class QueryExecutor : IQueryExecutor { /// /// 执行指定的查询并返回结果。 /// 该方法通过调用查询对象的 Do 方法来获取结果。 /// /// 查询结果的类型。 /// 要执行的查询对象,必须实现 IQuery<TResult> 接口。 /// 查询执行的结果,类型为 TResult。 public TResult Send(IQuery query) { // 验证查询参数不为 null,如果为 null 则抛出 ArgumentNullException 异常 ArgumentNullException.ThrowIfNull(query); // 调用查询对象的 Do 方法执行查询并返回结果 return query.Do(); } }