MySql EFCore 9 enthält ein Array-ProblemMySql

MySQL DBMS-Forum
Guest
 MySql EFCore 9 enthält ein Array-Problem

Post by Guest »

Ich versuche, eine „Contains List“-Linq-SQL-Abfrage an eine MySql-Datenbank durchzuführen, und die Abfrage kann nicht in SQL übersetzt werden. Dieselbe Abfrage funktioniert bei Verwendung des SQLServers.

Code: Select all

var arr = new long[] { 5, 3, 2 };
var results = await _datacontext.ChatMessages
.Where(x => arr.Contains(x.ChatMessageId))
.ToListAsync(cancellationToken)
< /code>
wobei ChatMessage (relevante Eigenschaften) < /p>
 istpublic class ChatMessage
{
public long ChatMessageId { get;set; }
}
Fehler zurückgegeben:

System.InvalidOperationException: 'Der LINQ-Ausdruck '@__arr_0' konnte nicht übersetzt werden. Zusätzliche Informationen: Die Unterstützung primitiver Sammlungen wurde nicht aktiviert. Schreiben Sie die Abfrage entweder in eine übersetzbare Form um oder wechseln Sie explizit zur Clientauswertung, indem Sie einen Aufruf von „AsEnumerable“, „AsAsyncEnumerable“, „ToList“ oder „ToListAsync“ einfügen.

Sollte das oben Gesagte nicht funktionieren, oder gibt es eine andere Möglichkeit, ein „IN“-SQL in Linq als „contains“ für MySql zu generieren?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post