カスタマイズされた一連の FieldTemplates で DynamicData を使用するかなり複雑な Web フォームがあります。すべてが .NET 3.5 SP1 で正常に動作しました...その後、.NET 4.0 に変換すると、一部のフィールドがロードを拒否し、次のようなエラーが発生しました。
System.InvalidOperationException: テーブル 'Tickets' に 'Contact' という名前の列がありません。
スタック トレースは、System.Web.DynamicData.MetaTable.GetColumn(String columnName) が実際の例外をスローしていることを示しているため、その関数で何かが変更されたと考えられます。しかし、何が... :(
列が存在することを確認しました (Eval() などを使用してアクセスできますが、DynamicControl は列を見つけられません)。さらに悪いことに、それが機能するいくつかのフィールドがあり、表示できません。機能する列と機能しない列の間で実際に異なるもの。機能しないものはすべて関連付けですが、機能する関連付けもあります。
編集: 質問のタイトルを変更しました... System.Web.DynamicData.MetaTable.GetTable() を使用して MetaTable 自体をトレースして取得しましたが、MetaTable に列が欠落していることを確認してください。理由がわかりません。