0
私は自分のアプリケーションでSQLiteのを使用していますし、私のテーブルは、このEFモデルごとに次のように定義されます列のMAX値の取得:指定された型メンバーは、LINQ to Entitiesではサポートされていません。
internal class Board
{
public string BoardID { get; set; }
public ushort BoardNumber { get; set; }
public string Content { get; set; }
public Board()
{
BoardID = string.Empty;
Content = string.Empty;
BoardNumber = 0;
}
}
プロパティ名は正確にデータベース列に一致します。 LINQ to Entityを使用して同じモデルを持つレコードを取得できます。私はそれが主題に記載されたエラーで失敗し、この操作をしようとすると、しかし、:
using (var db = new Models.EF.MyDbContext())
{
int last - db.Boards.Max(n => n.BoardNumber);
}
データベース内の列は、「BoardNumber」という名前と、整数型(SQLiteの)であり、PKではありません。
なぜこの操作は失敗しますか?
プロファイラを使用して生成されたクエリを確認し、sqllite dbに対して同じクエリを直接実行し、そのクエリが機能するかどうかを確認してください。 – CodingYoshi
タイピングがありませんか?負の符号は代入(=)符号で置き換える必要があります。 – Sparrow