Nicht in der Lage, um zu bestimmen, zusammengesetzte primary key-Bestellung geben
{"Nicht in der Lage, um zu bestimmen, zusammengesetzte primary key-Bestellung geben
'Conference_Project.Modelle.Login'. Verwenden Sie die ColumnAttribute (siehe
http://go.microsoft.com/fwlink/?LinkId=386388) oder die HasKey-Methode
(siehe http://go.microsoft.com/fwlink/?LinkId=386387) angeben
um für composite primary keys."}
[Table("ConferenceLogin")]
public class Login
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public long confid { get; set; }
[Key]
public string emailID { get; set; }
[Key]
public string registration { get; set; }
[Key]
public long regNo { get; set; }
}
Version Used : EntityFramework.6.1.3 And MVC5
Ich will eindeutiger Wert für diese (emailID
, registration
, regNo
) für das
legen Sie alle als primary key ist dann EntityFramework zeigte Fehler
wie man mehrere primär-Schlüssel (mit dem EntityFramework?
- wie man mehrere primär-Schlüssel (mit dem EntityFramework? Klicken Sie auf und Lesen Sie die links im exception-Meldung.
- Haben Sie erstellen wollen, n:n (many-to-many) Beziehung zwischen Tabellen mit Code First (alle Tabellen anzeigen, die im Zusammenhang mit es)? In der Regel
HasKey
vorCreateModel()
wie folgt verwendet:builder.Entity<ForeignTablePropertyName>().HasKey(p => new { p.emailID, p.registration, p.regNo });
. - Lösung bereits verfügbar, mein Fehler-link Ihr braucht nur zu setzen [Spalte(Order = 1)] Bestellnummer
- mögliche Duplikate von: stackoverflow.com/questions/11910962/...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Obwohl ich nicht sicher bin, wie die zugrunde liegende Logik, warum dieser Fehler Auftritt, ich hatte das gleiche Problem mit einem Projekt ich arbeiten war für die Klasse. Was für mich gearbeitet wurde, um eine Spalte hinzuzufügen(um) decorator um das Key-tag drehen
in
wo n ist die 0-basierte index der Schlüssel in Frage stellen.
In diesem Licht, Ihre Klasse sollte wie folgt Aussehen:
Hoffe, das funktioniert für Sie so gut wie es für mich getan hat!
Einstellen, dass Registrierung Spalte als Primärschlüssel verwenden, müssen Sie den Datentyp nvarchar(50),.
vom Datentyp nvarchar(128) wird nicht zulassen, Sie zu machen, primary key