0

VB.NET に次の LINQ クエリがあります。

Using db As New ReablementLSQLDataContext
                query = (From b In db.Visits
                             Join c In db.LinkStaffToVisits On b.ID Equals c.VisitID
                             Where c.StaffID = staffid And b.StartEpoch = newepochdatetime).ToList()

            End Using

これを実行すると、匿名型のリストが返されます。これは、その中のデータにアクセスしたい場合、まったく役に立たないことを意味します。この結合ステートメントを実行して具象型のリストを返すにはどうすればよいですか?

4

2 に答える 2

3

foreachクエリ結果としての匿名型は、 (ローカルで)いつでも上書きできるため、それほど「役に立たない」わけではありません。それでも、具象型が必要な場合は、最後に select ステートメントを追加し、匿名の結果を型に射影することができます (この型を作成し、どのフィールドをどこで使用するかを知っていると仮定します) (C# 構文)

var newQuery = query.Select(anon_x => new YourType(anon_x.field1, anon_x.field2, ...))
于 2012-04-25T09:25:23.533 に答える
1

メソッドの汎用バージョンを使用できますToList。私はC#開発者であり、関連する構文を提供できますC#:

.ToList<YourType>();

バージョンのVB.Net読み取り: http://msdn.microsoft.com/en-us/library/bb342261.aspx#Y0

于 2012-04-25T09:22:48.277 に答える