0

我目前有以下数据模型,我想对其运行一些 Entity Framework 5 查询:

SecurityCollection( A_id, name, description)

SecurityIds( B_id, name, description)

PureJunctionTable( A_id, B_id)

UsersAssignedToSecurity(B_id, E_id, name)

Users(E_id, name,number)

我想将所有 SecurityCollection 分配给 id 为 123 的用户。

Entity Framework 5 不会为 PureJunctionTable 创建数据模型,因为它只包含外键。

我希望在 Linq 或 Lambda 表达式中编写此查询。

为了争论,让表名保持不变。

我可以毫无问题地编写 SQL 语句,但我很难将其放入 Entity Framework 5 Lambda 表达式中。

谢谢

4

1 回答 1

0

PureJunctionTable 应该在 edmx 中表示为 SecurityCollection 和 SecurityIds 之间的关系,它表现为 SecurityIds 上的 SecurityCollections 集合和 SecurityCollection 上的 SecurityIds 集合。

如果没有在本地创建所有对象,我不能保证以下内容是 100% 准确的,但您的表达式将类似于:

context.Users
    .Include( "SecurityIds" )
    .Include( "SecurityCollections" )
    .Where( u => u.E_id == 123 );
于 2013-07-19T19:46:51.740 回答