首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何通过项目文件启用protobuf-net.BuildTools OneOf支持?

如何通过项目文件启用protobuf-net.BuildTools OneOf支持?
EN

Stack Overflow用户
提问于 2021-11-10 16:34:46
回答 1查看 237关注 0票数 1

文档似乎表明,这是可能的,但我没有任何运气,使这一工作,如所述。

net5.0项目、protobuf-net (3.0.101)和protobuf-net.BuildTools(3.0.101)是唯一的NuGet引用。

简单的.proto文件定义为:

代码语言:javascript
运行
复制
syntax = "proto3";

message ExampleMessage {
    oneof SomeGroup {
        int32 foo = 1;
        string bar = 3;
        double baz = 4;
    }
}

.csproj文件片段:

代码语言:javascript
运行
复制
<ItemGroup>
  <AdditionalFiles Include="example.proto" OneOf="enum"/>
</ItemGroup>

代码生成,但不包括任何枚举定义。

我知道这类似于最近的另一个问题,但这个问题不涉及属性,我也不被允许在那里发表评论。

EN

Stack Overflow用户

回答已采纳

发布于 2021-11-11 18:14:35

简短版本:工具捆绑中有一个错误;我已经修复了这个问题,并且随着即将进行的构建(目前正在通过CI构建),应该解决这个问题;问题中的配置现在起作用了,C#中的附加输出:

代码语言:javascript
运行
复制
public SomeGroupOneofCase SomeGroupCase => (SomeGroupOneofCase)__pbn__SomeGroup.Discriminator;

public enum SomeGroupOneofCase
{
    None = 0,
    Foo = 1,
    Bar = 3,
    Baz = 4,
}
票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69916950

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档