さまざまな理由から、個別のビューモデル クラスを作成する必要があります。
モデルを過度に露出しないように、個別のビューモデル クラスを使用することをお勧めします。10 個のフィールドを持つエンティティ クラスをビュー モデルとして使用し、そのうちの 5 個のみを公開したい場合、悪意のあるユーザーが余分なデータをクエリ文字列と共に投稿し、自動バインドが気付かないうちにそれを融合させる可能性があります。 .
あなたの例では、フィールドにまったく異なる名前を使用したい場合があります。これは、エンティティ クラスのカスタム ビューモデルを作成するのに最適な候補です。
これらの懸念事項を分離することで、将来的にアプリケーションを再利用しやすくなり、現在のテスト/デバッグが容易になります。ビュー モデルが多すぎる状況に陥った場合は、これらのさまざまなコントローラー、ビュー、およびモデルを別の領域に分割することを検討してください (領域に関するブログ)。
補足として、JSON をフォーマットする場合は、通常、JSON シリアライザー クラスの編集は多大な労力を要するため、事前に行うよりも事後に JavaScript で行う方が簡単な場合があります。キャメルケースを通過し、自動的に_
分離された小文字に変換するスクリプトを作成できます。これを行うことの欠点は、機能がそのように実行されることを期待していなかった場合、将来的に意図しない影響を与える可能性があることです.