【发布时间】:2019-09-13 16:06:37
【问题描述】:
我正在使用 Sqlite-net 处理 C# 应用程序。我的查询应该返回一个单列值,但是当我运行查询时,我得到了异常。我的代码是:
foreach(var group in groups)
{
var groupNameCmd = EdgeDatabase._connection.CreateCommand(@"SELECT Name from tblGroup WHERE Id = " + group.Id);
List<string> groupName = groupNameCmd.ExecuteQuery<string>();
}
在“ExecuteQuery”我得到异常“没有为此对象定义无参数构造函数”。
【问题讨论】:
-
如果您使用的是.net core 2.0,请检查您的包引用,如果您的包引用和sdk安装的版本不匹配,通常会出现此错误。
-
也许你不能使用
string作为目标类型。您是否尝试过使用名为Name的字符串类型属性创建一个类并使用该类型代替<string>? -
没错,不能使用"string",但是找不到原因和解决方法。 @Crowcoder
-
这是因为String上没有无参构造函数。像这样的工具使用反射,它没有任何东西可以用作构造函数参数。我提到了一个解决方案,使用另一种类型。
标签: c# sqlite-net