当它们应该是唯一的时,重复记录

时间:2014-01-29 22:21:13

标签: c# linq

我有一个表,我正在尝试使用Linq to SQL查询

表非常简单,它有5列:

 - PersonID
 - ADID
 - Name
 - PlaceID
 - PlaceName

我的表中有2条记录,两条记录中的PersonID相同,但PlaceID和PlaceName值不同:

001 | 001 | Person X | P01 | Place 1
001 | 001 | Person X | P02 | Place 2

当我在SQL中查询时,我得到了完整的2行:

select * from myTable where PersonID = '001'

但是,当我尝试在LINQ中执行此操作时:

List<myTable> PersonInfo = (from myInfo in db.myTable 
where myInfo.PersonID == "001"
select myInfo).ToList();

我在PersonInfo得到2分,但它们是相同的记录。我做错了什么?

1 个答案:

答案 0 :(得分:1)

我发现第一个实体框架需要一个主键才能正常运行。在研究了我正在使用的表后,我发现有一个主键,但它是一个组合键所以一旦我在两列上放了“Entity Keys”,我的select语句就会返回正确的数据。

感谢@GertArnold和其他帮助我解决这个问题的人!