源生成代理推荐写法
定义
定义
命名空间:
TouchSocket.Rpc
TouchSocket.Rpc.JsonRpc
安装:
dotnet add package TouchSocket.Rpc
一、声明接口
在TouchSocket
中,关于Rpc
,我们有更为推荐的写法。详细步骤如下:
(1)新建类库项目,命名为RpcClassLibrary
。然后在该程序集中,定义服务接口,和接口参数实体类。
/// <summary>
/// 定义服务接口。
/// </summary>
[GeneratorRpcProxy]
public interface IUserServer:IRpcServer
{
[DmtpRpc]
LoginResponse Login(LoginRequest request);
}
public class LoginRequest:RequestBase
{
public string Account { get; set; }
public string Password { get; set; }
}
public class LoginResponse : ResponseBase
{
}
//下面两个是请求和响应的基类,可以根据业务增加其他字段
public class RequestBase
{
}
public class ResponseBase
{
public Result Result { get; set; }
}
二、实现接口
新建类库项目,命名RpcImplementationClassLibrary
,引用RpcClassLibrary
项目,然后用于实现接口。
public class UserServer : IUserServer
{
public LoginResponse Login(LoginRequest request)
{
//返回假逻辑
return new LoginResponse() { Result=Result.Success};
}
}
然后新建类文件,命名为AssemblyInfo.cs
,用于存放程序集相关配置。此处的目的是设置Rpc
服务自动注册。
所以类文件中,需要添加如下代码:
using TouchSocket.Rpc;
[assembly: GeneratorRpcServerRegister]