0

我正在为我的项目使用 linq to sql。但是在我转换ExecuteQuery()使用.ToList()扩展的结果后出现错误:

var logentries = DB.ExecuteQuery<keyValueList>(string.Format(query));
keyValueList kv1 = logentries.ToList();// -->Error in this line as: 

错误:

无法将类型“System.Collections.Generic.List”隐式转换为“DataLib.keyValueList”

4

1 回答 1

0

ToList返回一个List<T>where Tis keyValueList。但我认为你想要一个对象,然后使用First/FirstOrdefaultSingler/ SingleOrDefault

keyValueList kv1 = logentries.FirstOrDefault();

不同之处在于,如果输入序列为空,则...OrDefault方法返回,而抛出异常。此外,如果有多个项目,则会引发异常(如果这是不可能的并且应该抛出,例如因为您正在按唯一属性进行过滤,则很有用)。nullFirst/SingleSingle

于 2013-09-03T12:45:24.397 回答