Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Anmärkning
Sekvenser är en funktion som vanligtvis endast stöds av relationsdatabaser. Om du använder en icke-relationell databas, till exempel Azure Cosmos DB, kontrollerar du databasdokumentationen om hur du genererar unika värden.
En sekvens genererar unika, sekventiella numeriska värden i databasen. Sekvenser är inte associerade med en specifik tabell och flera tabeller kan konfigureras för att hämta värden från samma sekvens.
Grundläggande användning
Du kan konfigurera en sekvens i modellen och sedan använda den för att generera värden för egenskaper:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.HasSequence<int>("OrderNumbers");
modelBuilder.Entity<Order>()
.Property(o => o.OrderNo)
.HasDefaultValueSql("NEXT VALUE FOR OrderNumbers");
}
Observera att den specifika SQL som används för att generera ett värde från en sekvens är databasspecifik. exemplet ovan fungerar på SQL Server men misslyckas på andra databaser. Mer information finns i dokumentationen för din specifika databas.
Konfigurera sekvensinställningar
Du kan också konfigurera ytterligare aspekter av sekvensen, till exempel dess schema, startvärde, ökning osv.:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.HasSequence<int>("OrderNumbers", schema: "shared")
.StartsAt(1000)
.IncrementsBy(5);
}