.NET 6控制台项目Visual Studio中gRPC C#生成类为空文件问题
解决.NET 6控制台应用gRPC代码生成空文件的问题
核心问题排查与修复步骤:
统一gRPC相关包版本
你的项目中Grpc.Net.Client(2.49.0)和Grpc.Tools(2.50.0)版本不一致,这是gRPC代码生成异常的常见诱因。将所有gRPC相关包版本统一,示例修正后的项目依赖配置:<ItemGroup> <PackageReference Include="Google.Protobuf" Version="3.21.9" /> <PackageReference Include="Grpc.Net.Client" Version="2.50.0" /> <PackageReference Include="Grpc.Tools" Version="2.50.0"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> </PackageReference> </ItemGroup>清理编译缓存并重新生成
旧的编译缓存可能干扰代码生成逻辑,执行以下操作:- 右键项目选择「清理」
- 删除项目目录下的
bin和obj文件夹 - 右键项目选择「生成」
验证proto文件配置
确认Protos\greet.proto的路径在项目中实际存在,文件名与路径拼写无错误;同时确认GrpcServices="Server"符合你的需求(若需同时生成客户端代码,可改为GrpcServices="Both")。
内容的提问来源于stack exchange,提问作者bstack
相关产品推荐
相关产品推荐

