Qual é a melhor maneira de gerar manualmente Chaves Primárias no Entity Framework 4.1 Code First
Qual é a melhor maneira de gerar manualmente Chaves Primárias no Código do Entity Framework 4.1 Primeir
stou programando o ASP.NET MVC 3 e uso um padrão de repositóri
Atualmente, gero chaves em uma ordem sequencial usando o código abaixo:
'Code First Class
Public Class Foo
<Key()>
<DatabaseGenerated(DatabaseGeneratedOption.None)>
Public Property iId As Integer
Public Property sBar As String
End Class
'Context Class
Public Class FooBarContext : Inherits DbContext
Public Property Foos As DbSet(Of Foo)
End Class
'Get the current Id
'Part of code in repository that stores Entity Foo.
Dim iCurrId as Integer = (From io In context.Foo
Select io.iId()).Max
Dim iNewId as Integer = iCurrId + 1
Foo.iId = iNewId
Minha preocupação é (por mais improvável) que dois (ou mais) usuários tentem salvar uma entidade Foo ao mesmo tempo e, portanto, obtenham o mesmo ID e a inserção falh
Esta é uma boa maneira, ou existe alguma melhor?
Por favor, não POSSO (e não irei) usar um campo de identidade gerado por banco de dado