目标:XFEExtension.NetCore.ServerInteractive
代码:XFE0008
级别:❌️ 错误
描述:标记为Request/Response的方法不能包含参数。
生成器会把请求/响应方法映射到 Dictionary<string, Func<object>>。
Func<object> 只支持“无参数”方法签名,因此只要方法带参数,就无法绑定到生成的字典委托,进而触发该错误。
将 [Request] / [Response] 方法改成无参数。
如果确实需要输入数据,建议从统一上下文、请求对象或服务内部状态中获取,而不是通过方法参数传入。
using XFEExtension.NetCore.ServerInteractive.Attributes;
namespace Demo;
public partial class UserRequestService : StandardRequestServiceBase
{
// ❌ 错误写法:有参数
[Request("api/user/create", Name = "CreateUser")]
public object CreateUser(string userName)
{
return new { Ok = true, Name = userName };
}
}
using XFEExtension.NetCore.ServerInteractive.Attributes;
namespace Demo;
public partial class UserRequestService : StandardRequestServiceBase
{
private string _pendingUserName = "DefaultUser";
// ✅ 正确写法:无参数
[Request("api/user/create", Name = "CreateUser")]
public object CreateUser()
{
return new { Ok = true, Name = _pendingUserName };
}
}