Heim > Datenbank > MySQL-Tutorial > Wie gebe ich Schlüssel manuell in Entity Framework-Tabellen ein?

Wie gebe ich Schlüssel manuell in Entity Framework-Tabellen ein?

Susan Sarandon
Freigeben: 2025-01-15 19:01:44
Original
488 Leute haben es durchsucht

How to Manually Enter Keys into Entity Framework Tables?

Manuelles Festlegen von Primärschlüsseln mit Entity Framework

Entity Framework generiert in der Regel automatisch Primärschlüssel, es kann jedoch vorkommen, dass Sie Schlüsselwerte manuell zuweisen müssen. Dies führt häufig zu Konflikten, wenn die automatische Inkrementierung aktiviert ist. So gehen Sie damit um:

Um zu verhindern, dass Entity Framework automatisch Primärschlüssel generiert, können Sie entweder die Fluent-API oder Datenanmerkungen verwenden:

Methode 1: Fluent API

Dieser Ansatz ändert den Modellersteller:

<code class="language-csharp">modelBuilder.Entity<Event>().Property(e => e.EventID).HasDatabaseGeneratedOption(DatabaseGeneratedOption.None);</code>
Nach dem Login kopieren

Wenn die Fehlermeldung „Kann keinen expliziten Wert für die Identitätsspalte in Tabelle ‚Ereignisse‘ einfügen, wenn IDENTITY_INSERT auf AUS gesetzt ist“ auftritt, müssen Sie die Datenbankeinstellungen anpassen:

  1. Öffnen Sie SQL Server Management Studio (SSMS) und stellen Sie eine Verbindung zu Ihrer Datenbank her.
  2. Suchen Sie die Tabelle „Ereignisse“.
  3. Klicken Sie mit der rechten Maustaste auf die Tabelle, wählen Sie „Eigenschaften“ und gehen Sie zur Registerkarte „Optionen“.
  4. Setzen Sie im Abschnitt „Identitätsspezifikation“ „Ist Identität“ auf „Nein“. Klicken Sie auf „OK“.

Methode 2: Datenanmerkungen

Alternativ können Sie Attribute direkt in Ihrer Entitätsklasse verwenden:

<code class="language-csharp">[Key]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int EventID { get; set; }</code>
Nach dem Login kopieren

Beide Methoden erzielen das gleiche Ergebnis: die Deaktivierung der automatischen Inkrementierung für die Spalte EventID, sodass Sie die Schlüsselwerte direkt angeben können, wenn Sie Daten in Ihre Events-Tabelle einfügen. Denken Sie daran, eine Methode auszuwählen und diese konsequent anzuwenden. Die gleichzeitige Verwendung beider führt wahrscheinlich zu Konflikten.

Das obige ist der detaillierte Inhalt vonWie gebe ich Schlüssel manuell in Entity Framework-Tabellen ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage