3

*.proto ファイルから C# .cs ファイルを生成するために protobuf-net ProtoGen を使用しています。class の代わりに struct を生成したいと思います。例えば

[DataContract]
public struct Entity1
{
    [ProtoMember(1)]
    public double Field1 { get; set; }

    [ProtoMember(2)]
    public string Field2 { get; set; }
}

Serializer.GetProtoクラスと構造体型のメソッドを使用してプロトコルバッファを抽出しようとしました。プロトコル バッファ (.proto) が構造体とクラスの違いを認識していないようです。つまり、ProtoGen では、.proto から生成するクラス/構造体を選択するためのパラメーターになる可能性があります。機能は存在しますか、または *.proto からの構造体の生成をどのように解決できますか?

4

1 に答える 1

1

現時点では、ProtoGen はクラスのみを発行します。データは本質的に変更可能であるため、これは妥当であると言えますが、次の 2 つのオプションがあります。

  • editをcsharp.xslt置き換えます(またはcopyを使用し、パラメーターを使用してコピーを使用するように指示します)classstruct csharp.xslt-t
  • 「そのまま」使用し、ctrl+を賢明に使用しますh(ローテクですが、機能します)。
于 2013-08-21T14:46:21.983 に答える