seguir por ejemplo marco de la entidad:columna de identidad en EF 4
http://msdn.microsoft.com/en-us/library/bb399182.aspx
y tengo problema con columnas de identidad.
Aquí es parte del código de la base de datos de creación:
CREATE TABLE [dbo].[Person](
[PersonID] [int] IDENTITY(1,1) NOT NULL,
[LastName] [nvarchar](50) NOT NULL,
[FirstName] [nvarchar](50) NOT NULL,
[HireDate] [datetime] NULL,
[EnrollmentDate] [datetime] NULL,
CONSTRAINT [PK_School.Student] PRIMARY KEY CLUSTERED
(
[PersonID] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
END
GO
En VS 2010 construyo .edmx y al modelo que ver a esa persona StoreGeneratedPattern se ajusta a la Identidad.
Pero cuando quiero crear persona, por:
Por qué debo poner Identificación, si esta columna es incrementado automáticamente?
EDITŁ
pensé que encontré la manera de resolver mi problema por:
var schoolContext = new SchoolEntities();
schoolContext.AddToPeople(new Person() { LastName = "Gates", FirstName = "Bil" });
schoolContext.SaveChanges();
porque Bill añadió a las personas, pero ... porque PersonaID no es anulable, y le inserté con id 0. Cuando traté de añadir otra persona de la misma manera, por supuesto, me sale error acerca de la clave principal :)
Así todavía sin nada ...
¿Alguna idea?
Gracias Marc! Es la próxima vez que me ahorras mucho tiempo – user278618
Bonito patrón, pero creo que estarías más seguro usando el 0 predeterminado para el id ... -1 fallaría en las comprobaciones de valor predeterminadas y se podría suponer que no diseñarías una tabla con una identidad comenzando en cero. –
@daveL: los números negativos funcionan bien para mí .... –