Possible Bug with MySQL and Entity Framework
Posted by: Patrick Schimmel
Date: January 15, 2010 09:50AM

I've created a model from my existing MySQL database.
One object for instance is a contract which is related to several projects (table taskorder).

var query = from i in context.Projects
where i.Contract.ID == contract.ID
orderby i.Number
select i;

When I query the model using above statement the database will sometimes return several objects that are equal, although it should only return one.
The following statement is created by the provider:

SELECT
`Project1`.`C1`,
`Project1`.`anyproblems`,
`Project1`.`awarddatetaskorder`,
`Project1`.`created_at`,
`Project1`.`created_by`,
`Project1`.`datedeleted`,
`Project1`.`deleted`,
`Project1`.`donumber`,
`Project1`.`endawarddate`,
`Project1`.`id`,
`Project1`.`modified_at`,
`Project1`.`modified_by`,
`Project1`.`reasondeleted`,
`Project1`.`safetyproblems`,
`Project1`.`short_description`,
`Project1`.`site`,
`Project1`.`startawarddate`,
`Project1`.`taskorder_comments`,
`Project1`.`taskorder_initialcontractprice`,
`Project1`.`taskorder_internalcomments`,
`Project1`.`taskorder_ntp`,
`Project1`.`taskorder_performancetime`,
`Project1`.`taskorder_projectnumber`,
`Project1`.`taskorder_sitefinaldate`,
`Project1`.`town`,
`Project1`.`userdeleted`,
`Project1`.`address1`,
`Project1`.`address2`,
`Project1`.`street`,
`Project1`.`zip`,
`Project1`.`autocalculatetotal`,
`Project1`.`id1`,
`Project1`.`id2`,
`Project1`.`contract_ID`,
`Project1`.`psp_element`,
`Project1`.`country_id`,
`Project1`.`projectstatus_id`,
`Project1`.`visiblecurrency_id`,
`Project1`.`evaluation_id`,
`Project1`.`id3`
FROM (SELECT
`Extent1`.`address1`,
`Extent1`.`address2`,
`Extent1`.`anyproblems`,
`Extent1`.`autocalculatetotal`,
`Extent1`.`awarddatetaskorder`,
`Extent1`.`contract_ID`,
`Extent1`.`country_id`,
`Extent1`.`created_at`,
`Extent1`.`created_by`,
`Extent1`.`datedeleted`,
`Extent1`.`deleted`,
`Extent1`.`donumber`,
`Extent1`.`endawarddate`,
`Extent1`.`evaluation_id`,
`Extent1`.`id`,
`Extent1`.`modified_at`,
`Extent1`.`modified_by`,
`Extent1`.`projectstatus_id`,
`Extent1`.`psp_element`,
`Extent1`.`reasondeleted`,
`Extent1`.`safetyproblems`,
`Extent1`.`short_description`,
`Extent1`.`site`,
`Extent1`.`startawarddate`,
`Extent1`.`street`,
`Extent1`.`taskorder_comments`,
`Extent1`.`taskorder_initialcontractprice`,
`Extent1`.`taskorder_internalcomments`,
`Extent1`.`taskorder_ntp`,
`Extent1`.`taskorder_performancetime`,
`Extent1`.`taskorder_projectnumber`,
`Extent1`.`taskorder_sitefinaldate`,
`Extent1`.`town`,
`Extent1`.`userdeleted`,
`Extent1`.`visiblecurrency_id`,
`Extent1`.`zip`,
`Extent2`.`id` AS `id1`,
`Extent3`.`id` AS `id2`,
`Extent4`.`id` AS `id3`,
1 AS `C1`
FROM `taskorder` AS `Extent1` LEFT OUTER JOIN `level1` AS `Extent2` ON `Extent1`.`id` = `Extent2`.`projectnumber_id` LEFT OUTER JOIN `leveldefinitions` AS `Extent3` ON (`Extent3`.`projectnumber_id` IS NOT NULL) AND (`Extent1`.`id` = `Extent3`.`projectnumber_id`) LEFT OUTER JOIN `settingsreportlogos` AS `Extent4` ON (`Extent4`.`projectnumber_id` IS NOT NULL) AND (`Extent1`.`id` = `Extent4`.`projectnumber_id`)
WHERE `Extent1`.`contract_ID` = @p__linq__12) AS `Project1`
ORDER BY
`donumber` ASC

Options: ReplyQuote


Subject
Written By
Posted
Possible Bug with MySQL and Entity Framework
January 15, 2010 09:50AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.