2011-03-14 23 views
6

Tengo una relación 1: 1 entre la tabla 'A' y 'B' en mi .DBML. El FK en la base de datos está en su lugar y el diagrama .DBML muestra una línea de asociación entre 'A' y 'B'. Sin embargo, no puedo obtener el generador de código para crear una propiedad hija en la entidad 'A'. Todo lo que tengo es la columna FK. En las propiedades de la Asociación, tengo ChildProperty establecido en verdadero. Sin embargo, el generador de código no creará la propiedad hija. He soltado y agregado las dos tablas varias veces.Linq a SQL .DBML Problema de propiedad hijo

¿Alguien tiene alguna idea?

+0

Tuve problemas similares cuando una tabla no tiene una clave principal o LINQ to SQL no le gusta la clave principal en mi tabla (por el motivo que sea). Ese podría no ser el problema aquí, pero es lo que viene a la mente ... – shaunmartin

+0

@shaunmartin: ese era el problema. Haga de esto una respuesta a mi pregunta y la aceptaré como respuesta. –

Respuesta

16

El diseñador de O/R se rehusará a crear una propiedad de asociación si falta una clave principal en una de las tablas asociadas. Asegúrese de que todas sus tablas asociadas tengan una clave principal.

0

No estoy seguro, pero creo que lo que usted llama 1: 1 es realmente visto por DBML como 1: * porque la lista puede "tener" muchas de sus tablas fk, p. un empleado puede tener una ciudad, pero cada ciudad puede "tener" muchos empleados.

AFAIK una clave principal en cada tabla es un requisito previo sin el cual el DBML no "funcionará". Se emite un error al guardarlo. Su proyecto se compilará, pero verá los errores más adelante. HTH

Cuestiones relacionadas