You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ServiceStack gRPC代码优先生成的.proto文件字段命名规范调整问询

ServiceStack gRPC代码优先生成的.proto文件字段命名规范调整问询

嗨,我之前刚好碰到过这个问题!ServiceStack其实提供了调整生成的proto字段命名风格的办法,完全可以改成符合官方指南的格式,给你两种可行的方案:

  • 全局统一配置:在ServiceStack应用的启动配置里,通过GrpcOptions设置全局的字段命名规则,把它改成下划线分隔的小写风格。示例代码如下:
Plugins.Add(new GrpcFeature {
    Options = new GrpcOptions {
        FieldNameStyle = ProtobufNamingConvention.SnakeCase
    }
});

这样所有通过代码优先生成的proto文件字段,都会自动转为符合官方规范的命名格式,不用逐个字段修改。

  • 单个字段自定义:如果只想调整特定字段的命名,不想全局修改,可以在DTO类的属性上加上[ProtoMember]特性,手动指定字段的proto名称,比如:
public class UserRequest
{
    [ProtoMember(1, Name = "user_id")]
    public int UserId { get; set; }
    
    [ProtoMember(2, Name = "user_email")]
    public string UserEmail { get; set; }
}

需要注意的是,如果之前已经生成过proto文件,记得先清理旧文件再重新生成,确保新的命名规则能生效。

备注:内容来源于stack exchange,提问作者Michał Chaniewski

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.16 09:03:09