【问题标题】:LINQ TO Entitites : Combining Two Non Related Tables in QueryLINQ TO 实体:在查询中组合两个不相关的表
【发布时间】:2013-01-05 15:21:42
【问题描述】:

我有两张桌子:

Relationships (ID,   UserID,   Type,   Contact ID)   

Contacts (ID,   Name,  Address) 

Relationship表中type为5时,Contact ID为Contacts表中的ID。

我想获取特定用户的所有联系人信息

这是我所拥有的:

IEnumerable<Relationship> rels  = user.Relationships.Where(r => r.Type==5)
foreach (Relationship r in rels)
{
            contact = contactRepository.Find(r.ContactID);  // Returns Contact Object 
            Relation relation = new Relation(r, contact);   
            RelationList.Add(relation);

 }

这是正确的方法吗?

我看过其他提到 TPC 的帖子。但是,我不是很了解,而且似乎 TPC 仅适用于代码优先进程。

【问题讨论】:

标签: linq entity-framework


【解决方案1】:

您可以使用关系表和联系人表来使用以下 linq 语句来获取给定用户 ID(比如 UserID=15)的联系人:

var contacts=from r in Relationships
             join c in Contacts on r.ContactID equals c.ID
             where r.Type=5 and r.UserID=15
             select c;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-26
    • 2013-10-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多