LINQ to SQL query has wrong values in results

2019-06-26 06:49发布

I have a LINQ query that has the incorrect results, but when I profile the SQL generated, the SQL results are correct.

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>();

I get back two duplicates : "How to install Office 2003" and "How to install office 2003" enter image description here

Below is the output of the profiled SQL: enter image description here

What could be happening to the assignment of the results from the generated SQL?

1条回答
老娘就宠你
2楼-- · 2019-06-26 07:39

Update based on comments

Your linq query is fine, but in your model you have to set the Primary Key/Entity Key

Linq-to-Sql

In your dbml, you need to change your primary key from Application_Version_ID to Documentation_Id

Linq-to-Entities

In your model, you need to change your entity key from Application_Version_ID to Documentation_Id

查看更多
登录 后发表回答