Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从数据库中检索所有记录_C#_Sql - Fatal编程技术网

C# 如何从数据库中检索所有记录

C# 如何从数据库中检索所有记录,c#,sql,C#,Sql,我已经编写了该服务,但当我运行它时,它只检索数据库表中的第一条记录,而且如果我在SWAGGER上查看它,该服务将工作,但只返回一条记录,而不是全部记录 public async Task<APRSSMSAUDIT_Dto> GetAPRSMessageViewAsync() { try { using (var conn = new OracleConnection(_configuration.GetConnectionString("Pa

我已经编写了该服务,但当我运行它时,它只检索数据库表中的第一条记录,而且如果我在SWAGGER上查看它,该服务将工作,但只返回一条记录,而不是全部记录

public async Task<APRSSMSAUDIT_Dto> GetAPRSMessageViewAsync()
{
    try
    {
        using (var conn = new OracleConnection(_configuration.GetConnectionString("Payment")))
        {
            using (var cmd = conn.CreateCommand())
            {
                conn.Open();
                using (var unitOfWork = _unitOfWorkManager.Begin())
                {
                    var sql = "SELECT * FROM EPMS_Messaging";
                    var reference = conn.QueryFirstOrDefault<APRSSMSAUDIT_Dto>(sql);
                    conn.Close();
                    unitOfWork.Complete();
                    await Task.Delay(1);
                    return new APRSSMSAUDIT_Dto
                    {
                        Application_ID = reference.Application_ID,
                        Reference_ID = reference.Reference_ID,
                        Mail_ID = reference.Mail_ID,
                        Message = reference.Message,
                        Template_ID = reference.Template_ID,
                        Msg_Response = reference.Msg_Response,
                        Date_Created = reference.Date_Created,
                        Branch = reference.Branch
                    };

                }
            }
        }
    }
    catch (Exception ex)
    {
        Logger.Error("An error occured in GetLatestMessageAsync Type of error : " + ex.GetType() + ". Error message: " + ex.Message + "Exception data : " + ex.Data + "Exception numerical code : " + ex.HResult + "TargetSite : " + ex.TargetSite + "Exception source " + ex.Source);
        return null;
    }
}
    }
}
QueryFirstOrDefault只返回您试图检索的集合的第一项

您可以在此处阅读一些有关其工作原理的文档:

为了检索整个集合,必须使用Query

如果您仍然不知道如何使用它,可以检查。

将QueryFirstOrDefault更改为Queryawait Task.Delay1;现在说什么?