我正在尝试使用Entity Framework 4.1
Code First:
Select c1,
c2,
(select v1 from table2 where id = c3) as col3
from table1
非常感谢任何帮助。
修改
例如,假设我在数据库中有两个表,
LookupValues [ID,Code,DescResourceID]
资源[ResourceID,Culture,Value]
DescResourceID和ResourceID是外键。
所以我想为...创建配置或映射。
public partial class LookupValues
{
public virtual string ID;
public virtual string Code;
public virtual string Description;
}
如上所述,描述映射到subquery
。
答案 0 :(得分:1)
您可以尝试这样的事情:
var query = from x in context.Table1
let z = context.Table2
.Where(y => y.Id == c3)
.Select(y => y.V1).FirstOrDefault()
select new
{
C1 = x.C1,
C2 = x.C2,
C3 = z
};
答案 1 :(得分:0)
我会创建一个实体模型并使用LINQ。
我假设您在使用Entity Framework时知道LINQ是什么。
假设您有一个类似以下的数据结构;
产品和产品有(第1栏,第2栏,第3栏) Categories和Categories键具有Column3,它与Products.Column3
等效执行以下操作;
var categories_Column3 = List<Categories>().Select(c => c.Column3 == some value);
var products_Column3_Query = List<Products>().Select(c => c.Column3 == categories_Column3).ToList<value_type_of_column3>();
当然,这只是一些假的代码,因为我想确保你掌握LINQ,并意识到你可以使用Entity Framework在LINQ中做你想做的事情,因为OR / MI现在会指向你以下网站,它应该为您提供有关LINQ的详尽教程。
http://weblogs.asp.net/scottgu/archive/2007/05/19/using-linq-to-sql-part-1.aspx
希望这有帮助!
快乐的编码! ;)