LINQ to SQL查询在结果中具有错误的值

时间:2012-02-23 15:19:12

标签: c# entity-framework linq-to-sql entity-framework-4 linq-to-entities

我的LINQ查询结果不正确,但是当我分析生成的SQL时,SQL结果是正确的。

ApplicationsEntities context = new ApplicationsEntities();
var query = from documentation in context.Documnetations
            where documentation.Application_Version_ID == app_ver_id
            orderby documentation.Name
            select documentation;
docs = query.ToList<Documnetation>();

我得到两个重复:“如何安装Office 2003”和“如何安装Office 2003” enter image description here

以下是配置文件SQL的输出: enter image description here

从生成的SQL中分配结果会发生什么?

2 个答案:

答案 0 :(得分:6)

根据评论进行更新

您的linq查询很好,但在您的模型中,您必须设置主键/实体键

<强> LINQ到-SQL

dbml中,您需要将主键从Application_Version_ID更改为Documentation_Id

<强> LINQ到实体

model中,您需要将实体密钥从Application_Version_ID更改为Documentation_Id

答案 1 :(得分:0)

这种情况发生是当一个或多个结构发生了更改时。

删除您的,并在 EDM 重新生成。 (实体数据模型)

右键单击Update Model from Database...Add...