C# proto文件自动生成关联类

 预备工作 创建一个.netFramework  console application:

并导入以下Nuget package

Google.protobuff

Grpc.Core

Grpc.tools

 

 

1.在VS里操作,先创建文件夹Protos

在Protos里再创建Protos (用来存放生成的CS文件)

编辑

 

然后关掉VS2019

 

2.在文件系统中操作,在第一个protos里添加文件,并改名为XXX.proto

编辑

编辑

 

 

3.用记事本打开项目文件axxxx.csproj文件 , 修改csproj文件,增加以下内容 并保存。

 

编辑

 

编辑

 

  <ItemGroup>

    <Protobuf Include="**/*.proto" OutputDir="Protos" CompileOutputs="false"  GrpcServices="Both"/>

  </ItemGroup>

 

4.用VS打开项目,此时可以看相应的proto文件已经加载到项目中

编辑

 

此时编写 Proto文件,则会在Protos\Protos下生成对应的CS类文件

编辑

 

5.在Protos/Protos添加生成的xxxGrpc.cs文件(如果是服务端,客户端选择非grpc的cs)

到项目中(Existing Item)

编辑

 

 

 

编辑

 

此时已经关联相应的proto与class,修改proto则对于的类会自动生成。

 

如:在proto中新增一个service

编辑

 

保存后,grpcCommonGrpc.cs里的内容会自动更新,无需使用工具编译

编辑

 

 

6.如果要新增proto文件,最好不要在VS上新增,否则会在VS中重复加载,可以直接在系统文件管理中新增,重新打开VS会自动将proto的文件加入项目。

编辑

 

编辑

 

 

 


posted @ 2023-11-29 21:21  高_山_流_水  阅读(317)  评论(0)    收藏  举报