簡體   English   中英

實體框架 - 如何在輔助表中的非主鍵列上連接表?

[英]Entity Framework - How do I join tables on non-primary key columns in secondary tables?

我想使用實體框架加入2個表。 我希望第二個表的連接位於非主鍵列上。

例如,我有一個帶有字段的表Foo

Foo.Id (PK)
Foo.DbValue

和桌子吧

Bar.Id (PK)
Bar.DbValue
Bar.Description

我想在DbValue領域加入Foo到EF吧。

在hibernate / nhibernate中,可以通過向多對一添加列參數來實現。 大致是這樣的

<class name="Foo" table="Foo>
  <id name="Id" column="Id" />
  <many-to-one name="Bar" class="Bar" column="**DbValue**" />
</class>

如果有人知道如何在EF中這樣做,請提前感謝。

那么你不能把它作為命名關系(即標准方式)。

所以這意味着這種關系不是模型的一部分。

但是,您仍然可以執行標准的LINQ連接:

from f in ctx.Foo
join b in ctx.Bar on f.DbValue equals b.DbValue
select new {f,b} 

希望這可以幫助

看看我的EF Tips系列。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM