I have one specific view created in my DB(joins about 5-6 tables with a left join).This view is added to my edmx (entity framework 1.0) . Recently I noticed that one of the column records obtained using the edmx (linq to entities and then ToList()) got duplicated multiple times though in the database view they were different
Column-N (Expected result/ result from DB view)
---------
data1
data2
data3
data4
data5
Column-N(Actual result generated by entity framework)
---------
data1
data1
data1
data1
data1
I fired up my SQL profiler,got the query which was sent by my application to the SQL Server, ran it and it returned me the expected result.
MSDN has a similar post here and here but the moderator has not elaborated on how to solve this problem. My key happens to be a GUID
The root cause you pointed out I think
is correct, the problem is on the
application side EF mapping, as EF has
different object mapping rules with
database. when the query results have
been returned from database, the EF
will do the mapping on application
memory according to its own designed
logic.
It's important to take these logic
into account when you desingn your
view query in your database side. I
think you should do some adjustment on
your view query.
I am not sure whether you have sorted
the problem, if not please provide the
database structure related to this
issue and the view query you have
written.
Thanks Binze
Has someone encountered a similar problem before ?
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…