【发布时间】:2013-08-27 14:54:06
【问题描述】:
我在一个 C# ASP.NET 项目上。
我有一个 MySQL 表,其用户 ID 字段类型为 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();。
我不知道我在这里做错了什么。请帮忙。
【问题讨论】: