2017-01-26 132 views
0

二元關係的病情,我有2個表之間的二元關係,我需要翻譯,在實體框架 正是在這樣TypesDescUse指數法表包含一些數字。您需要將它們視爲二進制值,並且它們的ID是DescUse在傳統TSQL中通過二進制關係可以具有DescUse表的名稱。包括在實體框架

例1:0001 & 0011是0001和在DescUse 1已經由值 「網站」

示例2命名:1010 & 1000是1000和在DescUse 8按值具有名稱 「桌面」

select DU.Name AS Name from Indexs I 
INNER JOIN DescUse DU ON I.TypesDescUse & DU.DescUseID <>0 

你有什麼想法我怎麼能在lambda實體框架中做到這一點?

+0

感謝朱莉婭怎麼樣拉姆達版本? – Hesam

回答

0
from I in Indexs 
join DU in DescUse on true equals true 
where (I.TypesDescUse & DU.DescUseID) != 0 
select new {Name = I.Name}; 

OR

Indexs.Join(DescUse, 
      I => true, 
      DU => true, 
      (I, DU) => new { IVal = I.TypesDescUse, DUVal = DU.DescUseID, Name = DU.Name }) 
     .Where(x => (x.IVal & x.DUVal) != 0).Select(x => x.Name)