diff --git a/GFramework.Core/extensions/ContextAwareCommandExtensions.cs b/GFramework.Core/extensions/ContextAwareCommandExtensions.cs
index 08de9bb..abcc307 100644
--- a/GFramework.Core/extensions/ContextAwareCommandExtensions.cs
+++ b/GFramework.Core/extensions/ContextAwareCommandExtensions.cs
@@ -59,24 +59,6 @@ public static class ContextAwareCommandExtensions
context.SendCommand(command);
}
- ///
- /// [Mediator] 异步发送命令并返回结果
- ///
- /// 命令响应类型
- /// 实现 IContextAware 接口的对象
- /// 要发送的命令对象
- /// 取消令牌,用于取消操作
- /// 包含命令执行结果的ValueTask
- /// 当 contextAware 或 command 为 null 时抛出
- public static ValueTask SendCommandAsync(this IContextAware contextAware,
- Mediator.ICommand command, CancellationToken cancellationToken = default)
- {
- ArgumentNullException.ThrowIfNull(contextAware);
- ArgumentNullException.ThrowIfNull(command);
-
- var context = contextAware.GetContext();
- return context.SendCommandAsync(command, cancellationToken);
- }
///
/// 发送并异步执行一个无返回值的命令
diff --git a/GFramework.Core/extensions/ContextAwareMediatorCommandExtensions.cs b/GFramework.Core/extensions/ContextAwareMediatorCommandExtensions.cs
new file mode 100644
index 0000000..80c308d
--- /dev/null
+++ b/GFramework.Core/extensions/ContextAwareMediatorCommandExtensions.cs
@@ -0,0 +1,48 @@
+using GFramework.Core.Abstractions.rule;
+using Mediator;
+
+namespace GFramework.Core.extensions;
+
+///
+/// 提供对 IContextAware 接口的 Mediator 命令扩展方法
+/// 使用 Mediator 库的命令模式
+///
+public static class ContextAwareMediatorCommandExtensions
+{
+ ///
+ /// [Mediator] 发送命令的同步版本(不推荐,仅用于兼容性)
+ ///
+ /// 命令响应类型
+ /// 实现 IContextAware 接口的对象
+ /// 要发送的命令对象
+ /// 命令执行结果
+ /// 当 contextAware 或 command 为 null 时抛出
+ public static TResponse SendCommand(this IContextAware contextAware,
+ ICommand command)
+ {
+ ArgumentNullException.ThrowIfNull(contextAware);
+ ArgumentNullException.ThrowIfNull(command);
+
+ var context = contextAware.GetContext();
+ return context.SendCommand(command);
+ }
+
+ ///
+ /// [Mediator] 异步发送命令并返回结果
+ ///
+ /// 命令响应类型
+ /// 实现 IContextAware 接口的对象
+ /// 要发送的命令对象
+ /// 取消令牌,用于取消操作
+ /// 包含命令执行结果的ValueTask
+ /// 当 contextAware 或 command 为 null 时抛出
+ public static ValueTask SendCommandAsync(this IContextAware contextAware,
+ ICommand command, CancellationToken cancellationToken = default)
+ {
+ ArgumentNullException.ThrowIfNull(contextAware);
+ ArgumentNullException.ThrowIfNull(command);
+
+ var context = contextAware.GetContext();
+ return context.SendCommandAsync(command, cancellationToken);
+ }
+}
\ No newline at end of file
diff --git a/GFramework.Core/extensions/ContextAwareMediatorQueryExtensions.cs b/GFramework.Core/extensions/ContextAwareMediatorQueryExtensions.cs
new file mode 100644
index 0000000..fe4b823
--- /dev/null
+++ b/GFramework.Core/extensions/ContextAwareMediatorQueryExtensions.cs
@@ -0,0 +1,47 @@
+using GFramework.Core.Abstractions.rule;
+using Mediator;
+
+namespace GFramework.Core.extensions;
+
+///
+/// 提供对 IContextAware 接口的 Mediator 查询扩展方法
+/// 使用 Mediator 库的查询模式
+///
+public static class ContextAwareMediatorQueryExtensions
+{
+ ///
+ /// [Mediator] 发送查询的同步版本(不推荐,仅用于兼容性)
+ ///
+ /// 查询响应类型
+ /// 实现 IContextAware 接口的对象
+ /// 要发送的查询对象
+ /// 查询结果
+ /// 当 contextAware 或 query 为 null 时抛出
+ public static TResponse SendQuery(this IContextAware contextAware, IQuery query)
+ {
+ ArgumentNullException.ThrowIfNull(contextAware);
+ ArgumentNullException.ThrowIfNull(query);
+
+ var context = contextAware.GetContext();
+ return context.SendQuery(query);
+ }
+
+ ///
+ /// [Mediator] 异步发送查询并返回结果
+ ///
+ /// 查询响应类型
+ /// 实现 IContextAware 接口的对象
+ /// 要发送的查询对象
+ /// 取消令牌,用于取消操作
+ /// 包含查询结果的ValueTask
+ /// 当 contextAware 或 query 为 null 时抛出
+ public static ValueTask SendQueryAsync(this IContextAware contextAware,
+ IQuery query, CancellationToken cancellationToken = default)
+ {
+ ArgumentNullException.ThrowIfNull(contextAware);
+ ArgumentNullException.ThrowIfNull(query);
+
+ var context = contextAware.GetContext();
+ return context.SendQueryAsync(query, cancellationToken);
+ }
+}
\ No newline at end of file
diff --git a/GFramework.Core/extensions/ContextAwareQueryExtensions.cs b/GFramework.Core/extensions/ContextAwareQueryExtensions.cs
index ed2d47e..3d9719e 100644
--- a/GFramework.Core/extensions/ContextAwareQueryExtensions.cs
+++ b/GFramework.Core/extensions/ContextAwareQueryExtensions.cs
@@ -42,24 +42,6 @@ public static class ContextAwareQueryExtensions
return context.SendQuery(query);
}
- ///
- /// [Mediator] 异步发送查询并返回结果
- ///
- /// 查询响应类型
- /// 实现 IContextAware 接口的对象
- /// 要发送的查询对象
- /// 取消令牌,用于取消操作
- /// 包含查询结果的ValueTask
- /// 当 contextAware 或 query 为 null 时抛出
- public static ValueTask SendQueryAsync(this IContextAware contextAware,
- Mediator.IQuery query, CancellationToken cancellationToken = default)
- {
- ArgumentNullException.ThrowIfNull(contextAware);
- ArgumentNullException.ThrowIfNull(query);
-
- var context = contextAware.GetContext();
- return context.SendQueryAsync(query, cancellationToken);
- }
///
/// 异步发送一个查询请求