В необработанном выражении gRP C / .proto это service
:
service MyService {
rpc SomeMethod (SomeDtoDefinedSomewhere) returns (AnotherDtoDefinedSomewhere);
rpc AnotherMethod (Blah) returns (Whatever);
}
Сейчас; что происходит далее зависит от инструментов, которые вы используете; protoc
создаст для этого прокси-сервер клиента и заглушку сервера, а не интерфейс C#. Вы можете работать с этим «как есть» или добавить свой собственный интерфейс в качестве абстракции.
Однако protobuf- net (отдельная реализация protobuf в. NET) может работать с этим как чистый C# интерфейс через protogen
. К сожалению, я еще не обновил веб-сайт с помощью твиков, чтобы фактически выдавать определения сервисов в качестве интерфейсов. Но это должно работать из капель предварительного просмотра Nuget.