2012-05-30 15 views
7

何らかの理由で、 "firstname"がOpportunity Entityに存在しないと言われています。ただし、SystemUserエンティティ用に設定されています。なぜそれが混乱しているのか?ありがとう!LINQのWhereステートメント内でエラーが発生しました

  var linqQuery = (from r in gServiceContext.CreateQuery("opportunity") 
          join c in gServiceContext.CreateQuery("account") on ((EntityReference)r["accountid"]).Id equals c["accountid"] 
          join u in gServiceContext.CreateQuery("systemuser") on ((EntityReference)r["ownerid"]).Id equals u["systemuserid"] 
          where r["new_leadstatus"].Equals("100000004") && u["lastname"].Equals(rsmLastName) && u["firstname"].Equals(rsmFirstName) 
          select new 
          { 
           AccountId = !r.Contains("accountid") ? string.Empty : r["accountid"], 
           Account = !r.Contains("name") ? string.Empty : r["name"] 
          }); 

答えて

10

の終わりそれぞれのwhere句をそれ自身の行に入れてください。per Microsoft guidelines

句がしばしば ブール式を使用して、結果にフィルタを適用する。フィルタは、ソースシーケンスから を除外する要素を指定します。各は、句には単一のエンティティタイプに対して の条件しか含めることができません。複数のエンティティを含む複合条件 は無効です。代わりに、各エンティティ を別々にフィルタリングする必要があります。句。

var linqQuery = from r in gServiceContext.CreateQuery("opportunity") 
       join c in gServiceContext.CreateQuery("account") on ((EntityReference)r["accountid"]).Id equals c["accountid"] 
       join u in gServiceContext.CreateQuery("systemuser") on ((EntityReference)r["ownerid"]).Id equals u["systemuserid"] 
       where r["new_leadstatus"].Equals("100000004") 
       where u["lastname"].Equals(rsmLastName) && u["firstname"].Equals(rsmFirstName) 
       select new 
       { 
        AccountId = !r.Contains("accountid") ? string.Empty : r["accountid"], 
        Account = !r.Contains("name") ? string.Empty : r["name"] 
       }; 
+0

where文が2つあることが分かりませんでした。魅力のように働いた、ありがとう! –

+0

新しい何かを毎日学ぶ。ありがとう@Peter –

+0

ちょうどカップルの時間をこの壁の上に私の頭を叩いて過ごした。ありがとうございました。 –

2

あなたは「R」として機会エンティティへのご参照を定義するが、「U」からのファーストネームを読み取ろうとしている

from r in gServiceContext.CreateQuery("opportunity") 

u["firstname"] 

変更し、あなたのところへ

r["firstname"].Equals(rsmFirstName) 
+0

しかし、私は機会からsystemuserない機会とlnew_leadstatusからファーストネームを確認したいです。 –

関連する問題