正如您在 Versioning gRPC services 中看到的,在GRPC中,我们可以通过在proto文件中定义package来使用版本控制。如何以代码优先的方式实现相同的功能?
proto
package
6ljaweal1#
您可以使用一些方法来满足您的要求。首先使用Service[greet.V1]:
Service[greet.V1]
namespace BSN.Resa.Cas.AppService.Contract { [ServiceContract("BSN.Resa.Cas.V1")] public interface ICaptchaQueryService { Task<Response<CaptchaVerifyViewModel>> VerifyAsync(CaptchaQueryServiceVerifyRequest request); } }
字符串namespace gree.V1:
namespace gree.V1
namespace BSN.Resa.Cas.AppService.Contract.V1 { [ServiceContract] public interface ICaptchaQueryService { Task<Response<CaptchaVerifyViewModel>> VerifyAsync(CaptchaQueryServiceVerifyRequest request); } }
型第三,您可以更改名称interface以与版本合并,例如,将ICaptchaQueryService更改为ICaptchaQueryServiceV1。最后,您可以根据需要将上述方法组合在一起。
interface
ICaptchaQueryService
ICaptchaQueryServiceV1
1条答案
按热度按时间6ljaweal1#
您可以使用一些方法来满足您的要求。
首先使用
Service[greet.V1]
:字符串
namespace gree.V1
:型
第三,您可以更改名称
interface
以与版本合并,例如,将ICaptchaQueryService
更改为ICaptchaQueryServiceV1
。最后,您可以根据需要将上述方法组合在一起。