Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

A column ID occurred more than once in the specification?

I am getting this error message when using EF 4.1 code first approach with Sql compact 4. I don't see any model who has id column more than one so i have no idea why this error occured. What can cause this error ?

Edit : I want to specifiy few extra things. Database creating is success but model creating is not. And Exception has been thrown from sqlce methods.

like image 840
Freshblood Avatar asked Apr 21 '11 23:04

Freshblood


2 Answers

This issue stems from a SQL query that returns two or more columns that have an identical name. SQL will handle exact duplicate names on columns with no problem but c# will puke errors all over like this one.

example situation:

TableA
  int Id
  varchar Name

TableB
  int Id
  int A_Id
  varchar Name


SELECT A.*,
       B.Name
FROM TableA A

INNER JOIN TableB 
   ON B.A_Id = A.Id

The Id and Name columns would be duplicated and cause an exception with EF

like image 52
Matthew Cox Avatar answered Nov 19 '22 21:11

Matthew Cox


This could also be caused when the migration code is not update to date. This usally occurs when the executing the Add-Mirgration muliple times. Run the following command instead:

Add-Migration <migration-name> -force
like image 1
Joshua Gossett Avatar answered Nov 19 '22 21:11

Joshua Gossett