zoukankan      html  css  js  c++  java
  • 【gRPC使用问题2】按照问题1操作生成出来的代码,import的proto内定义的message未生成出来

    1.问题

    其实元数据proto里是有定义message,但是 这个message的定义是在另一个 proto文件内,被 api.proto导入,事实上 我是对 api.proto

    进行命令行生成代码的(命令:F:Coding est-gRPC-generateConsoleApp1packagesGrpc.Tools.1.13.0 oolswindows_x86protoc.exe -IConsoleApp1 --csharp_out ConsoleApp1  ConsoleApp1apiapi.proto --grpc_out ConsoleApp1 --plugin=protoc-gen-grpc=packagesGrpc.Tools.1.13.0 oolswindows_x86grpc_csharp_plugin.exe)

    :所以被import的proto内message定义并未生成出来。

    2.解决方法:

     手动分批次执行命令,将 其他的proto文件定义的内容生成出来。

    i.e:

    //C:UsersDELLDesktopConsoleApp11packagesGrpc.Tools.1.13.0	oolswindows_x86protoc.exe -IConsoleApp1 --csharp_out ConsoleApp1  ConsoleApp1apiapi.proto --grpc_out ConsoleApp1 --plugin=protoc-gen-grpc=packagesGrpc.Tools.1.13.0	oolswindows_x86grpc_csharp_plugin.exe
    
    //C:UsersDELLDesktopConsoleApp11packagesGrpc.Tools.1.13.0	oolswindows_x86protoc.exe -IConsoleApp1 --csharp_out ConsoleApp1  ConsoleApp1coreContract.proto --grpc_out ConsoleApp1 --plugin=protoc-gen-grpc=packagesGrpc.Tools.1.13.0	oolswindows_x86grpc_csharp_plugin.exe
    
    //C:UsersDELLDesktopConsoleApp11packagesGrpc.Tools.1.13.0	oolswindows_x86protoc.exe -IConsoleApp1 --csharp_out ConsoleApp1  ConsoleApp1coreDiscover.proto --grpc_out ConsoleApp1 --plugin=protoc-gen-grpc=packagesGrpc.Tools.1.13.0	oolswindows_x86grpc_csharp_plugin.exe
    
    //C:UsersDELLDesktopConsoleApp11packagesGrpc.Tools.1.13.0	oolswindows_x86protoc.exe -IConsoleApp1 --csharp_out ConsoleApp1  ConsoleApp1coreTron.proto --grpc_out ConsoleApp1 --plugin=protoc-gen-grpc=packagesGrpc.Tools.1.13.0	oolswindows_x86grpc_csharp_plugin.exe
    
    //C:UsersDELLDesktopConsoleApp11packagesGrpc.Tools.1.13.0	oolswindows_x86protoc.exe -IConsoleApp1 --csharp_out ConsoleApp1  ConsoleApp1coreTronInventoryItems.proto --grpc_out ConsoleApp1 --plugin=protoc-gen-grpc=packagesGrpc.Tools.1.13.0	oolswindows_x86grpc_csharp_plugin.exe

    GRPCTools会自动识别 不同内容的 Proto,生产不同的 .cs文件。

    3.

    使用生成好的代码:

    i.e:

      static void Main(string[] args)
            {
                Channel channel = new Channel("127.0.0.1:9007", ChannelCredentials.Insecure);
    
                var client = new Wallet.WalletClient(channel);
                //var reply = client.CreateAccount(); 
            }
    

      

     请保留原文链接:https://www.cnblogs.com/x-poior/p/9266103.html

  • 相关阅读:
    pyspider 爬虫教程(一):HTML 和 CSS 选择器
    EF异常:对一个或多个实体的验证失败
    通过Excel生成PowerDesigner表结构设计
    C#几种常用的加密方式
    在powerdesigner中创建物理数据模型
    powerdesigner逆向工程,从数据库导出PDM
    PowerDesigner怎样才能在修改表的字段Name的时候Code不自动跟着变
    如何查看用pip命令安装的软件的安装路径
    ckeditor编辑的使用方法
    【转】[慢查优化]联表查询注意谁是驱动表 & 你搞不清楚谁join谁更好时请放手让mysql自行判定
  • 原文地址:https://www.cnblogs.com/x-poior/p/9266103.html
Copyright © 2011-2022 走看看