0

私はLINQビジネスからのこの匿名タイプにかなり固執しています。これは、前の質問への回答を処理した結果ですが、残念ながら、これを機能させるための頭脳の力がまったくありません。

一人一人に関連するイベントの限定リストを返します。ソースはEntityFrameworkであり、ナビゲーションプロパティから条件が制限された結果を取得するためにまだ戦っています。以下のコードは、ニコラスバトラーの答えからの私の翻訳です。しかし、匿名タイプを適応させる方法が見つかりません。キャストが機能していないようです-または私は(おそらく)手がかりを持っていません。誰か助けてもらえますか?

Dim test = context.persons.Where(Function (r) r.personActive).Select(Function (o) New With { _
                 .person = o, _
                 .events = o.events.Where( Function(e) e.eventDateTime > startdate) _
            })

            Dim Res = New ObservableCollection(Of person )

            For Each person In test
                Res.Add(person)
            Next

私に与える:

エラー2タイプ'<匿名タイプ>(53行目)'の値を'PersonEntity.person'に変換できません。E:\ Dropbox \ Work Experimental \ PersonEntity- Copy \ PersonEntity \ personRepository.vb 61 29 PersonEntity

このコードをさらに使用しましたが、キャストでさらに別のエラーが発生したため、今回はイベントを添付できません。GenericListからObservableListへの変換は明らかに行われません。私の元の質問に答えるのは信じられないほどの方法のようです!

Dim test = context.persons.Where(Function(r) r.personActive).Select(Function(o) New With { _
                 .person = o, _
                 .events = o.events.Where(Function(e) e.eventDateTime > startdate) _
            })


            Dim Res = New ObservableCollection(Of person)

            For Each t In test
                Dim r As New person
                r = t.person
                r.events = t.events
                Res.Add(r)
            Next

            Return Res
4

1 に答える 1

1
Function(o) New With { _
         .person = o, _
         .events = o.events.Where(Function(e) e.eventDateTime > startdate) _
    }

これは、ではなく匿名タイプを返しますPerson。あなたはAddそのperson財産*を意味しましたか?

For Each o In test
    Res.Add(o.person)
Next
于 2012-12-17T23:35:11.480 に答える