そのような .proto ファイル構造を持つ
{
session{
field1 = value;
field2 = value;
...
}
object1{
Object1field1 = value;
Object1field2 = value;
...
}
object1{
Object1field1 = value;
Object1field2 = value;
...
}
object2{
Object2field1 = value;
Object2field2 = value;
...
SubObject1{
SubObject1field1 = value;
SubObject2field2 = value;
...
}
} object2{
Object2field1 = value;
Object2field2 = value;
...
SubObject1{
SubObject1field1 = value;
SubObject2field2 = value;
...
}
}
簡単に言えば、複雑な階層構造を持っています。たとえば、Object1 または Object2 は繰り返し可能です。int、bool、string、datetime、または単に string などのベース オブジェクトとしてフィールド値を返すユニバーサル メソッドを作成することは可能ですか? 文字列リテラルによる次のアクセスを取得したいと思います。
public object GetFieldValue(int number, string fullPath)
たとえば、次のように fullPath を指定できます。
fullPath = "object1.Object1field1";
繰り返しフィールドに必要な数値: たとえば、数値は最初の「object1」の場合は 0、2 番目の場合は 1 に等しくなる可能性があります。また、object1 の繰り返し回数をフィールド名で取得するために必要なメソッド:
public int GetFieldCount(string fieldName)
また、ネストされたレベルにサブオブジェクトにアクセスするための同様の方法も必要です。それは可能ですか?プロトコル バッファのハードコードされたクラスに代わるものはありますか?