2017-07-06 16 views
-1

これは私のクエリです。それはSQLで正常に動作していると私が望む結果を返します。 どうすればLinqで書くことができますか?Sql to linq(LinqでSqlクエリを作成する方法)

select * from g2issuetype it,storingsitems si 
where 1 not in 
(select 1 from contractstoringsitems cs where scontractid=110 
and cs.issuetypeid=it.issuetypeid and cs.storingsitemid=si.storingsitemid) order by issuetype,storingsitem 

私はこれを試していますが、正しくありません。この

from it in g2issuetype 
      join si in storingsitems 
      where !contractstoringsitems.Any(x => scontractid == 110 && x.issuetypeid = it.issuetypeid && x.storingsitemid = si.storingsitemid) 
      select new StoringsitemsViewMode { } 
のような私は(それが sqlexists/not existsのようなものです)あなたは Anyを使用することができます
(from it in _context.G2issueType 
     from si in _context.StoringsItems 
     where si.StoringsItemId != (from cs in _context.ContractStoringsitems 
            where cs.Scontractid == id 
            && cs.Issuetypeid == it.IssueTypeId 
            && cs.Storingsitemid == si.StoringsItemId) 
     select new StoringsitemsViewMode { }) 

答えて

1

のLINQでいずれかのLINQ

でこのクエリを記述するために私を助けることができる新しいです演算子