服务声明
优质
小牛编辑
131浏览
2023-12-01
创建服务接口,接口必须继承IService。
注意:在异步编程里,异步转同步调用是非常糟糕的,并且有可能死锁。为了避免这个问题,Uragano不支持同步方法,所有的服务方法必须是异步的。
[ServiceDiscoveryName("RPC")]
[ServiceRoute("hello")]
public interface IHelloService : IService
{
[ServiceRoute("say")]
Task<ResultModel> SayHello(string name);
}
服务接口必须加ServiceDiscoveryName属性,用于声明服务注册与发现的名字。
ServiceRoute属性是可选的,默认以{命名空间}/{接口名称}/{方法名称}为路由,路由你可以理解成服务的唯一标识,所以路由是不能有重复的,另外路由字符串只允许输入字母,数字,下划线,减号,斜杠。以上示例代码的路由为:hello/say