【发布时间】:2021-01-23 19:15:21
【问题描述】:
源自著名的介绍性示例 (https://docs.microsoft.com/en-us/aspnet/core/tutorials/grpc/grpc-start?view=aspnetcore-3.1&tabs=visual-studio) 的简单场景。为了使HelloRequest 消息可重复使用,我将其提取到另一个文件中——request.proto。该文件与原始 greet.proto 位于同一文件夹中(见最后的图片)。
我需要让Greeter 服务(在greet.proto 中)知道HelloRequest(在request.proto 中)。所有在 greet.proto 中导入它的尝试都失败并显示消息
...
1>Protos/greet.proto(7,1): error : Import "request.proto" was not found or had errors.
...
这里是 greet.proto
syntax = "proto3";
option csharp_namespace = "GrpcService1";
package greeter;
import "request.proto";
//import "Protos/request.proto";
//import "GrpcService1/Protos/request.proto";
// all other combinations I may have thought off...
// The greeting service definition.
service Greeter {
// Sends a greeting
rpc SayHello (HelloRequest) returns (HelloReply);
}
// The request message containing the user's name.
/*message HelloRequest {
string name = 1;
}*/
// The response message containing the greetings.
message HelloReply {
string message = 1;
}
和 request.proto:
syntax = "proto3";
package greeter; // needles to say this was commented out in all my attempts
message HelloRequest {
string name = 1;
}
【问题讨论】:
标签: c# visual-studio-2019 grpc .net-5