实体框架-如何将代码表中的列添加到当前实体中
本文关键字:实体 添加 代码表 框架 | 更新日期: 2023-09-27 18:00:15
我有两个表。
一个表是具有3列type
、code_id
、code_name
的codes_table
。
它包含以下行:
type code_id code_name
---------------------------
Color 1 Red
Color 2 Blue
Color 3 Green
Size 1 Small
Size 2 Medium
Price 1 Cheep
等等。
第二个表(我们称之为Products
)包含一个名为COLOR_ID
的列。
我认为不可能创建从第二个表到第一个表的外键。
现在,我想返回Products表(即第二个表)中的所有实体,并且每个实体都将根据其COLOR_ID包含COLOR_NAME。(即Im试图根据color_id将color_name从表1检索到表2中)
我正在使用运行在VS2013上的EF6,它通过ODP 12.1.24连接到Oracle11G。
我如何使用实体框架来做到这一点?是否有Linq查询可以检索合并后的数据?
谢谢。
您可以在linq:中使用嵌套自
using (var ctx = new TestContext())
{
var result = (from product in ctx.Products
from code in ctx.Codes.Where(c => product.colorId == c.code_id && c.type == "Color").DefaultIfEmpty()
select new {product, code}).ToList();
}