DataContext.ExecuteQuery
したがって、C#4.0での動的キーワードの出現により、任意の列が選択されたときに返される型を処理する問題のより良い解決策を見つけることができると期待しています。
過去に、私はそのようなクエリの結果を保持するために新しいタイプを作成したか、このSO投稿で説明されている方法を使用しました。そこで、.NET 4.0で実行されている新しいプロジェクトに取り組むことができるようになったので、動的タイプを使用して同じことを簡単に実行できるようにすることを検討しました。
だから、私はこれを試してみました:
var result = _db.ExecuteQuery<dynamic>( "SELECT CustomerID,City FROM Customers", new object[0] );
foreach( var d in result )
{
MessageBox.Show( String.Format( "{0}, {1}", d.CustomerID, d.City ) );
}
動的オブジェクトのプロパティCustomerIDが存在しないため、実行時に例外がスローされます。したがって、これまでの動的キーワードの経験はnil(記事/ブログ投稿、実際の経験はありません)であるため、ここでやろうとしていることが可能かどうかを誰かに知らせてもらいたいと思っていました。ExecuteQueryの背後にある「魔法」の量を過大評価している可能性がありますが、これは舞台裏で行われるプロパティマッピングのために機能する可能性があると思いました。どんな助けでも大歓迎です。