C# как я могу получить все записи из базы данных - PullRequest
0 голосов
/ 05 августа 2020

Я написал службу, но когда я ее запускаю, она извлекает только первую запись в таблице базы данных, а также, если я просматриваю ее в 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;
    }
}
    }
}

1 Ответ

1 голос
/ 05 августа 2020

QueryFirstOrDefault() возвращает вам только первый элемент коллекции, которую вы пытаетесь получить.

Вы можете прочитать здесь некоторую документацию о том, как это работает: QueryFirstOrDefault ()

Чтобы получить всю коллекцию, вы должны использовать Query().

Если вы все еще не знаете, как его использовать, вы можете проверить эту ссылку .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...