protobuf中的字符串限制

时间:2010-12-09 23:48:17

标签: protocol-buffers

我可以在protobuf枚举中表示此XSDSchema枚举/字符串限制吗?

<s:element maxOccurs="1" minOccurs="1" name="Condition">
    <s:simpleType>
     <s:restriction base="s:string">
      <s:enumeration value="EQ" />
      <s:enumeration value="NE" />
      <s:enumeration value="GT" />
      <s:enumeration value="LT" />
      <s:enumeration value="GE" />
      <s:enumeration value="LE" />
      <s:enumeration value="LK" />
      <s:enumeration value="=" />
      <s:enumeration value="!=" />
      <s:enumeration value="&gt;" />
      <s:enumeration value="&lt;" />
      <s:enumeration value="=&gt;" />
     </s:restriction>
    </s:simpleType>
</s:element>

1 个答案:

答案 0 :(得分:2)

.proto枚举命名为整数,但请注意最后几个名称将为barf。您需要调整.proto / DTO图层中的名称,但是必须在"EQ""=""LE""<"之间消除歧义

但你可以在.proto中映射类似的东西,当然。

如果存储一个可以工作的字符串,但会有更多字节。不是许多更多(字符串长度为1个字节,char数据为1-4个字节,而枚举为1个字节)。