我在一个 C# ASP.NET 项目上。
我有一个 MySQL 表,其 userid 字段类型为int
。
现在我想使用 LINQ 获取 userid 的值等于某个值的行数。
为此,我编写了以下方法:
public int getCount(int usercode) {
int count = 0;
DataTable mytable = getAllRowsAndReturnAsDataTable(); // assigning a DataTable value to mytable.
if (mytable.Rows.Count > 0) {
count = (from x in mytable.AsEnumerable() where x.Field<Int32>("userid") == usercode select x).Count();
}
return count;
}
但它在红色突出显示区域System.InvalidCastException: Specified cast is not valid.
显示错误。count = (from x in mytable.AsEnumerable() where x.Field<Int32>("userid") == usercode select x).Count();
我不知道我在这里做错了什么。请帮忙。