Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

LINQ to SQL query has wrong values in results

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?

like image 460
Dave Harding Avatar asked Feb 23 '12 15:02

Dave Harding


1 Answers

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

like image 191
Aducci Avatar answered Oct 16 '22 08:10

Aducci