序列不包含 asp 核心和 sql 服务器 2016 中的任何元素
Sequence contains no elements in asp core and sql server 2016
我需要 return 来自数据库的信息 T-SQL
并且我正在使用 dapper。
我写了这段代码:
SELECT *
FROM UserActivetionCode UA
WHERE UA.Username=@Username
AND UA.ActivetionCode= @ActivetionCode
AND UA.ExpireTime > GETDATE()
我正在使用此代码:
var find = await roleConnection.QueryFirstAsync(command, new {
@ActivetionCode = ActivetionCode,
@Username = Username });
但它向我显示了这个错误:
Sequence contains no elements
这个错误意味着查询没有return任何结果。
如果你不想得到它,使用QueryFirstOrDefaultAsync
。
如果查询 return 没有行,这将导致 default(T)
(T
是查询应该 return 的任何数据类型)。
但是,QueryFirst
暗示结果集中的已知顺序,您的查询没有提供(因为它没有 order by
子句),无论如何,我怀疑Username
和 ActivetionCode
的组合应该是唯一的。在那种情况下,我会选择 QuerySingleOrDefault
,如果查询 return 的结果不止一个,这将引发异常。
我需要 return 来自数据库的信息 T-SQL
并且我正在使用 dapper。
我写了这段代码:
SELECT *
FROM UserActivetionCode UA
WHERE UA.Username=@Username
AND UA.ActivetionCode= @ActivetionCode
AND UA.ExpireTime > GETDATE()
我正在使用此代码:
var find = await roleConnection.QueryFirstAsync(command, new {
@ActivetionCode = ActivetionCode,
@Username = Username });
但它向我显示了这个错误:
Sequence contains no elements
这个错误意味着查询没有return任何结果。
如果你不想得到它,使用QueryFirstOrDefaultAsync
。
如果查询 return 没有行,这将导致 default(T)
(T
是查询应该 return 的任何数据类型)。
但是,QueryFirst
暗示结果集中的已知顺序,您的查询没有提供(因为它没有 order by
子句),无论如何,我怀疑Username
和 ActivetionCode
的组合应该是唯一的。在那种情况下,我会选择 QuerySingleOrDefault
,如果查询 return 的结果不止一个,这将引发异常。