1

これが機能しない理由を理解するのを手伝ってください:

Dim i = (From f In EfUtil.Db.EMAILADDRESSHISTORY _
                Where f.EMAILADDRESS.CUSTOMERCONTACTPERSON.CUSTOMERguid = New Guid(Request.QueryString("customer")) _
                Select New With {.guid = f.ACTIONguid, .name = f.ACTIONname}).ToList

次のエラーが表示されます

LINQ to Entities では、パラメーターなしのコンストラクターと初期化子のみがサポートされています。

ただし、この構造が機能する多くの例を見つけています。私は何が欠けていますか?

4

1 に答える 1

2

最も可能性の高い例は、LINQ to Objects の例であり、LINQ to Entities ではありません。

GUID を事前に宣言することで、これを回避できます。

Dim customerGuid as Guid = New Guid(Request.QueryString("customer"))
Dim i = (From f In EfUtil.Db.EMAILADDRESSHISTORY _
         Where f.EMAILADDRESS.CUSTOMERCONTACTPERSON.CUSTOMERguid = customerGuid _
         Select New With {.guid = f.ACTIONguid, .name = f.ACTIONname}).ToList

明確にするために:ここでの問題はあなたのものではありませんSelect。問題はNew Guid(...)そのWhere状態です。

于 2013-04-22T12:20:30.000 に答える