4

次の LINQ クエリを実行していますが、「'where' 条件が無効です。エンティティ メンバーが無効なプロパティまたはメソッドを呼び出しています。」というエラーがスローされます。

なぜそれが起こっているのか誰でも私に提案できますか?conn.Record2Id.LogicalName.Equals("account")からを削除するWHEREと、結果が返されますが、 LogicalName = account in が表示されquick viewます。

var connections = (from conn in context.CreateQuery<Connection>()                              
                  where (conn.Record1Id.Id.Equals(incidentId) 
                  && conn.Record2Id.LogicalName.Equals("account") 
                  && conn.StateCode == 0)
                  select conn).FirstOrDefault();

前もって感謝します

4

3 に答える 3

4

CRM の LINQ トランスレータは.Equals()メソッドを処理できません。

に変更しますconn.Record2Id.LogicalName == "account"

于 2013-02-11T16:11:08.983 に答える
0

これを試して:

var connections = (from conn in context.CreateQuery<Connection>()                              
              where conn.Record1Id != null 
              && conn.Record1Id.Id == incidentId 
              && conn.Record2Id != null 
              && conn.Record2Id.LogicalName == "account" 
              && conn.StateCode.Value == 0
              select conn).FirstOrDefault();    
于 2013-02-11T22:31:48.357 に答える
0

面白いですが、これを試してください:)

var connections = (from conn in context.CreateQuery<Connection>()                              
                  where (conn.Record1Id == new EntityReference("account",incidentId) 
                  && conn.StateCode == 0)
                  select conn).FirstOrDefault();
于 2016-06-07T16:07:52.263 に答える