Wenn Sie EF Core zum Abfragen von MySQL in C# verwenden, ist der Name der Primärschlüsselspalte falsch
<p>Ich lerne, wie man eine MySQL-Datenbank in C# abfragt, erhalte jedoch eine Fehlermeldung, die besagt, dass die Spaltenliste eine ungültige Spalte enthält, aber ich kann nicht herausfinden, woher dieser Spaltenname (ToDoId) kommt aus. </p>
<p>Die Tabelle enthält nur zwei Spalten (Modell unten gezeigt), und der Primärschlüssel in MySQL ist <code>Id</code>. Woher kommt diese <code>ToDoId</code> und wie erzwinge ich, dass sie zu <code>Id</code> wird? </p>
<p>Ich habe mir den gesamten Beispielcode (von hier) angesehen und glaube, dass ich alles aktualisiert habe, um meine neue Tabelle korrekt hinzuzufügen. </p>
<p>Das ist mein Modell:</p>
<pre class="brush:php;toolbar:false;">öffentliche Klasse ToDo
{
öffentliche Guid-ID { get;
public string ToDoName { get; set;
public ICollection<ToDos>
publicToDo()
{
ToDos = new HashSet<ToDo>();
}
}</pre>
<p>Hier erhalte ich den Fehler – in der Abfrage: </p>
<pre class="brush:php;toolbar:false;">öffentliche Klasse ToDoRepository: IToDoRepository
{
privater schreibgeschützter DatabaseContext _context;
öffentliches ToDoRepository(DatabaseContext-Kontext)
{
_context = Kontext;
}
// Das folgende _context.ToDo ist definiert als: public virtual DbSet<ToDo>
public IQueryable<ToDo> _context.ToDo.AsQueryable();
// Der Fehler ist hier aufgetreten...
public IReadOnlyList<ToDo> Query
.Auflisten();
}</pre>
<p>Fehlermeldung: </p>
<blockquote>
<p>MySqlConnector.MySqlException: Unbekannte Spalte „t.ToDoId“ in „Feldliste“</p>
</blockquote><p><br /></p>