mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-03-23 03:04:29 +08:00
- 将所有小写的命名空间导入更正为首字母大写格式 - 统一 GFramework 框架的命名空间引用规范 - 修复 core、ecs、godot 等模块的命名空间导入错误 - 标准化文档示例代码中的 using 语句格式 - 确保所有文档中的命名空间引用保持一致性 - 更新 global using 语句以匹配正确的命名空间格式
33 lines
1.1 KiB
C#
33 lines
1.1 KiB
C#
using GFramework.Core.Abstractions.CQRS.Query;
|
||
using GFramework.Core.Abstractions.Query;
|
||
using GFramework.Core.Rule;
|
||
|
||
namespace GFramework.Core.Query;
|
||
|
||
/// <summary>
|
||
/// 抽象异步查询基类,用于处理输入类型为TInput、结果类型为TResult的异步查询操作
|
||
/// </summary>
|
||
/// <typeparam name="TInput">查询输入类型,必须实现IQueryInput接口</typeparam>
|
||
/// <typeparam name="TResult">查询结果类型</typeparam>
|
||
/// <param name="input">查询输入参数</param>
|
||
public abstract class AbstractAsyncQuery<TInput, TResult>(
|
||
TInput input
|
||
) : ContextAwareBase, IAsyncQuery<TResult>
|
||
where TInput : IQueryInput
|
||
{
|
||
/// <summary>
|
||
/// 执行异步查询操作
|
||
/// </summary>
|
||
/// <returns>返回查询结果的异步任务</returns>
|
||
public Task<TResult> DoAsync()
|
||
{
|
||
return OnDoAsync(input);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 抽象方法,用于实现具体的异步查询逻辑
|
||
/// </summary>
|
||
/// <param name="input">查询输入参数</param>
|
||
/// <returns>返回查询结果的异步任务</returns>
|
||
protected abstract Task<TResult> OnDoAsync(TInput input);
|
||
} |