Google Protocol Buffers と Marc Gravell の素晴らしい protobuf-net プログラムを使い始めたばかりで、生成された .proto ファイルのフィールド宣言の命名規則がわかりません。
Googleが推奨しているのは次のとおりです。
「フィールド名には underscore_separated_names を使用します。たとえば、song_name です。」 https://developers.google.com/protocol-buffers/docs/style
「.protoファイルのフィールド名がアンダースコア付きの小文字を使用している場合でも、メソッド名は常にキャメルケースの命名を使用することに注意してください(そうあるべきです)。」 https://developers.google.com/protocol-buffers/docs/reference/java-generated
「.proto ファイルでは小文字とアンダースコアが使用されていますが、これらのアクセサ メソッドではキャメル ケースの命名方法が使用されていることに注意してください。」 https://developers.google.com/protocol-buffers/docs/javatutorial
しかし、これでprotobuf-netでSerializer.GetProto()メソッドを使用すると:
[ProtoContract]
public partial class AuthEntry
{
private string _windowsAccount = "";
private string _machineNames = "*";
[ProtoMember(1)]
public string WindowsAccount
{
get { return _windowsAccount; }
set { _windowsAccount = value; }
}
[ProtoMember(2)]
public string MachineNames
{
get { return _machineNames; }
set { _machineNames = value; }
}
}
私はこれを得る:
message AuthEntry {
optional string WindowsAccount = 1;
optional string MachineNames = 2;
}
これの代わりに、私が期待したように:
message AuthEntry {
optional string windows_account = 1;
optional string machine_names = 2;
}
大したことないとは思いますが、念のため…