gpt4 book ai didi

c# - LINQ to SQL 查询返回重复项

转载 作者:行者123 更新时间:2023-11-30 16:27:22 24 4
gpt4 key购买 nike

我有一个 Premiums 表,我试图使用以下 LINQ-to-SQL 查询:

var premiums = sourcePolicyContext.Premiums.Where(prm => prm.Policy_Number == "07748106");

这对数据库运行以下 SQL:

exec sp_executesql N'SELECT [t0].[Policy Number] AS [Policy_Number], ' + 
'[t0].[PremiiumType] AS [Premiium_Type], [t0].[Number], ' +
'[t0].[Effective Date] AS [Effective_Date], ' +
'[t0].[Entry Date] AS [Entry_Date], ' +
'[t0].[Collision Premium] AS [Collision_Premium], ' +
'[t0].[Non Collision Premium] AS [Non_Collision_Premium], ' +
'[t0].[Tow Premium] AS [Tow_Premium], ' +
'[t0].[Other Coverage1 Premium] AS [Other_Coverage1_Premium] ' +
'FROM [dbo].[Premium Table] AS [t0]' +
'WHERE [t0].[Policy Number] = @p0',
N'@p0 nvarchar(4000)',
@p0=N'07748106'

该查询直接运行时返回两行,正如预期的那样。它还会生成两个 LINQ to SQL 实体,但是这两个实体中的数据只是 SQL 查询结果中第一行的副本。为什么会发生这种情况?

最佳答案

不确定这是否有帮助,但如果您还没有这样做,请尝试为表提供一个专用的唯一标识列并将其设置为主键。确保您的 LINQ-TO-SQL 定义了解主键列。

关于c# - LINQ to SQL 查询返回重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7987621/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com