問題タブ [proto3]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
232 参照

c# - proto2 は proto3 メッセージを読み取ることができません

proto3 にアップグレードすることを決定しましたが、しばらくの間、proto2 を実行しているデバイスと通信できる必要があります。

現在、キーワードが原因で proto2 側でデシリアライズできないメッセージがいくつかあるという問題に直面していますrequired

これは、問題のあるメッセージの 1 つです (proto2)。

このメッセージを proto2 クライアントに送信しようとして、時間 = 1、分 = 2、マイクロ秒 = 0 のような値を設定した場合、クライアントはこのメッセージを逆シリアル化できません。microseconds=1 に設定すると、proto2 クライアントは問題なくメッセージを読み取ることができます。

これは、次の生成された C# コードに要約されます

そのため、フィールドの値がデータ型のデフォルト値と同じである場合、生成された proto3 コードはフィールドを送信しないようです。もちろん、これは proto2 を混乱させ、メッセージをデシリアライズしたくありません。なぜなら、フィールドは としてマークされてrequiredいますが、値が受信されていないからです。

(デフォルト値が設定されていても) 常にすべてのフィールドを送信するコードを生成するようにプロトコルを強制することは可能ですか、それとも他の方法で解決できますか?

ありがとう

0 投票する
0 に答える
57 参照

c# - 「ビルド>クリーンソリューション」を実行するときに、すべての「.proto」ファイルをあるディレクトリから別のディレクトリにコピーしたい]

私は .proto ファイル (Proto3) を使用しており、[Build] > [Clean] ソリューションを実行するときに、すべての .proto ファイルをあるディレクトリ (プロジェクト外) から別のディレクトリ (VS プロジェクト内) にコピーしたいと考えています。

前もって感謝します。

「Visual C# プロジェクト ファイル (.csproj)」ファイルを変更しようとしましたが、成功しませんでした

すべての .proto ファイルをプロジェクト内のフォルダーにコピーしたい。