2010-03-24 20 views

Respuesta

44

supongo que también debería pedir a la contexto ... ¿cómo estás usando linq?

¿Tiene una clave principal definida en la tabla?

Si no agrega la clave y actualice el modelo EF.

+0

Bien .. ¡Gracias por la repetición! ¡Solucioné este problema! El problema es que la clave primaria compuesta no se establece en la tabla DB donde, como la clave, se definen en las relaciones de entidad que causan este error. Como dijo Nix, fijado por 2 pasos .. > Creando la clave P compuesta > Actualizando la entidad con el nuevo esquema DB –

+0

Tuve un problema similar e incluso después de actualizar mi modelo para incluir la clave principal, actualizando el modelo del DB no pareció resolverlo. Sin embargo, eliminar la entidad del modelo y volver a agregarla de la base de datos lo ordena. ¡Todavía hay otro modelo de EF que no se actualiza correctamente de la historia de DB! – dougajmcdonald

+1

Mismo problema, no tenía la clave principal establecida en la columna de la tabla. Una vez que establecí la clave principal, actualicé el modelo EF y esto lo solucionó. – Flea

0

De acuerdo con la respuesta aceptada. Simplemente proporcionando la razón detrás de esto ...

Cuando el mapeo EF se hace con una tabla que no tiene la clave primaria, se considera como una vista & vistas que son una enity lógica, no se puede actualizar.

Agregue la clave principal que falta en sus tablas o considérelas como Ver & No realice ninguna operación de actualización en ellas.

0

Agregue la clave principal, elimine la entidad y agregue nuevamente en el archivo .edmx. Limpia y compila la solución.

Cuestiones relacionadas