将ProtoA导入protoB
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将ProtoA导入protoB相关的知识,希望对你有一定的参考价值。
我尝试了一种使用原始文件的方式
我在项目B的原型B中定义了rpc组件
示例:rpc行(RequestData)返回(ResponseInfoBase);
我在项目A(不同项目)中的Proto A中定义的消息
示例:消息RequestData {字符串数据= 1; }
消息ResponseInfoBase {字符串数据= 1; }我的问题是我可以将ProtoA导入ProtoB吗?
答案
源代码URL: https://github.com/vishipayyallore/speaker_series/tree/master/GRpcDemos/SimpleGRpcDemo
ForHoldingMessages.csproj仅保存消息。
<ItemGroup>
<Protobuf Include="Protosgreet.proto" GrpcServices="Server" />
<Protobuf Include="ProtosAddressBookMessages.proto" GrpcServices="None" />
</ItemGroup>
College.Service.csproj它保存rpc方法,并使用ForHoldingMessagaes.csproj中定义的消息。
<ItemGroup>
<Protobuf Include="..ForHoldingMessagesProtosAddressBookMessages.proto" GrpcServices="None">
<Link>ProtosAddressBookMessages.proto</Link>
</Protobuf>
<Protobuf Include="Protosgreet.proto" GrpcServices="Server" />
<Protobuf Include="..College.ServiceProtosAddressBook.proto" GrpcServices="Server" ProtoRoot="..">
</Protobuf>
</ItemGroup>
College.ServiceClient.csproj这是gRPC Client应用程序,它使用两个项目中的原型,并调用College.Service中定义的RPC方法。
<ItemGroup>
<Protobuf Include="..College.ServiceProtosAddressBook.proto" GrpcServices="Client" ProtoRoot="..">
<Link>ProtosAddressBook.proto</Link>
</Protobuf>
<Protobuf Include="..ForHoldingMessagesProtosAddressBookMessages.proto" GrpcServices="Client">
<Link>ProtosAddressBookMessages.proto</Link>
</Protobuf>
</ItemGroup>
图像供其他参考:
以上是关于将ProtoA导入protoB的主要内容,如果未能解决你的问题,请参考以下文章
Oracle 数据库 - 使用UEStudio修改dmp文件版本号,解决imp命令恢复的数据库与dmp本地文件版本号不匹配导致的导入失败问题,“ORACLE error 12547”问题处理(代码片段