如何使用 linq 查询与外键关联的值,并在列表视图中显示
本文关键字:列表 视图 显示 查询 linq 何使用 关联 | 更新日期: 2023-09-27 18:30:54
我有一个数据库和两个表,Male
Female
两个表都有一个int primary key with the name ID
两个表都有一个外键,两个表的外键都在一个名为 RecommendFemale
的单独表中。
男桌:
雄:
[dbo].[Male] (
[ID] INT IDENTITY (1, 1) NOT NULL,
[Image] VARCHAR (MAX) NULL,
[Name] VARCHAR (50) NULL,
[Age] INT NULL,
CONSTRAINT [PK_Female] PRIMARY KEY CLUSTERED ([ID] ASC)
);
女性:
[dbo].[Female] (
[ID] INT IDENTITY (1, 1) NOT NULL,
[Image] VARCHAR (MAX) NULL,
[Name] VARCHAR (50) NULL,
[Age] INT NULL,
CONSTRAINT [PK_Female] PRIMARY KEY CLUSTERED ([ID] ASC)
);
推荐:
[dbo].[RecommendFemale] (
[ID] INT IDENTITY (1, 1) NOT NULL,
[RecommendTo] INT NOT NULL,
[Recommend] INT NOT NULL,
CONSTRAINT [PK_RecommendFemale] PRIMARY KEY CLUSTERED ([ID] ASC),
CONSTRAINT [FK_Table_1_Female] FOREIGN KEY ([RecommendTo]) REFERENCES [dbo].[Female] ([ID]),
CONSTRAINT [FK_Table_1_Male] FOREIGN KEY ([Recommend]) REFERENCES [dbo].[Male] ([ID])
);
SuggestTo 是Female
表 ID 的外键,Recommendation Male
表 ID 的外键值。
我的问题是我想在列表视图中显示与外键关联的value
示例:Recommend
表RecommendTo
列中有多个外键值 Female,recommend
列列表具有 male 表的值。
我想将与RecommendTo
关联的值显示在列表视图中,即ID 4在外键表中有多个值,我想将与该单个数字关联的值显示在列表视图中,该怎么做?
因此,您要为 [男性] 或 [女性] 表中的特定记录选择所有建议?
如果不使用 LINQ TO SQL,而是执行动态查询或编写存储过程,它将如下所示(在 [Female] 表中查找记录建议):
SELECT
m.ID
,m.IMAGE
,m.NAME
,m.AGE
FROM [dbo].[Male] m
INNER JOIN [dbo].[RecommendFemale] rf ON rf.Recommend = m.ID
WHERE ft.RecommendTo = %FEMALE_ID%