gpt4 book ai didi

c# LINQ 查看 ISingleResult 返回多少行帮助!

转载 作者:太空狗 更新时间:2023-10-30 00:09:18 26 4
gpt4 key购买 nike

您好,我正在使用带有存储过程的 ISingleResult。如果 Isingler 是否为空,我如何检查 C#。因为有时 SP 什么都不返回,有时返回数据。

有没有办法确定 ISingleResult 包含多少行。感谢您的帮助。

最佳答案

您可以将结果转换为列表(使用 LINQ ToList 方法)或数组(使用 ToArray) ,然后从那里检查计数/长度。

List<T> result = YourStoredProcedureCall().ToList();

if (result.Count > 0)
{
// Deal with results here
}

如 Cullen 的回答所述,您可以使用 Count() 获取返回结果的数量。方法。请注意,这将在内部遍历列表以计算计数,如果您只是想确定是否有 1 个或多个结果,这不是最佳选择。

注意:

对于其中任何一个,请确保您的源文件中有以下 using 语句:

using System.Linq;

编辑注意:

我最初建议使用 Any()方法直接作用于 ISingleResult 结果,但这很可能会导致出现异常“不能多次枚举查询结果。”如果您随后尝试再次枚举 ISingleResult。首先转换成数组或列表可以避免此异常。从那里,您仍然可以在数组/列表上使用 Any(),或者您可以直接计算 Count 或 Length 属性,如代码示例所示。

关于c# LINQ 查看 ISingleResult 返回多少行帮助!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1847729/

26 4 0