日期:2014-05-20  浏览次数:20748 次

-------------------ADO.net主外键实体对象生成的请教-------------------
您好,各位,请教一个问题:
两张表,主外键关联,比如一张是学生表,一张是科目表,一对多的关系,我怎么才能在用ADO.net生成的实体对象中,用Linq查询生成一个学生对象的时候,有个属性是科目,然后包含这个学生的客户对象集合?而不用自己去组装user对象。十分感谢。

user_table
UserId
UserName

User_Course_table
CourseId
CourseName
UserId

Linq直接得到对象:
01
张三
(语文,数学,英语...)
十分感谢。
------解决方案--------------------
from u in db.user_table
join c in db.User_Course_table on u.UserId equals c.UserId
into g
select { user = u, course = g }
------解决方案--------------------
var query = from u in db.user_table
            join c in db.User_Course_table 
                on u.UserId equals c.UserId
                into g
            select new { user = u, course = g };
foreach (var item in query)
{
    Console.WriteLine(item.user.UserId);
    Console.WriteLine(item.user.Name);
    foreach (var item1 in item.course)
    {
        Console.WriteLine("\t" + item1.CourseName);
    }
}