In Entity Framework 6.1 (nicht der Kern), wie kann ich mit der IndexAttribute definieren Sie einen gruppierten index?

Entity Framework 6.1 (code-first) hat die Möglichkeit, das hinzufügen von Indizes über die IndexAttribute. Das Attribut ist ein parameter für die Angabe, ob der index sollte gruppierten oder nicht gruppierten.

Zur gleichen Zeit, AFAIK, Entity Framework benötigt jede Entität einen Primärschlüssel haben (kommentiert mit der KeyAttribute), und dass der Primärschlüssel wird immer als gruppierten - Taste.

Daher, sobald ich das IndexAttribute mit IsClustered = true, bekomme ich eine Fehlermeldung, weil der Schlüssel, die es schon gibt ist einen gruppierten index.

So, wie kann ich erstellen Sie einen gruppierten index, der nicht der Primärschlüssel über die IndexAttribute? Ist die IsClustered Eigenschaft des IndexAttribute geeignet sind, auf allen?

(Für ein wenig mehr Kontext: ich bin mapping einer Tabelle, die ist nur für Auslesen mit LINQ-Abfragen. Ich brauche Sie nicht wirklich einfügen, aktualisieren oder löschen von Entitäten aus, die Tabelle. Daher brauche ich nicht einen primary key an alle. Im Idealfall würde ich gerne eine Tabelle ohne Primärschlüssel, aber mit einem nicht eindeutigen gruppierten index optimiert für das Lesen.)

Bearbeiten (2014-04-11): Siehe auch https://entityframework.codeplex.com/workitem/2212.

Schreibe einen Kommentar