>我在我的应用程序中使用 SQLite,我的表是根据这个 EF 模型定义的:
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 实体获取具有相同模型的记录。但是,当我尝试此操作时,它会失败,并显示主题中所述的错误:
using (var db = new Models.EF.MyDbContext())
{
int last - db.Boards.Max(n => n.BoardNumber);
}
数据库中的列名为"BoardNumber",类型为整数 (SQLite),而不是 PK。
为什么此操作失败?
这可能是因为您当前的类型是ushort
,并且 LINQ to 实体不支持无符号整数和类型。
如果可行,您可能需要考虑使用其他类型,或者考虑实施另一种方法来读取与此处提到的类似的特定值。