Преобразовать список (объект) в объект - PullRequest
0 голосов
/ 17 октября 2019

Днем я начинаю изучение webapi с ядром .net. Тем не менее, это проект без orm (непосредственно в базе данных).

Я использую списки для получения данных из базы данных (например):

public List<Numerador_mdfe> Numerador_Get_id()
    {
        List<DbParameter> parameterList = new List<DbParameter>();
        List<Numerador_mdfe> Numerador_Lista = new List<Numerador_mdfe>();
        Numerador_mdfe Numerador = null;

        string sql = "SELECT top 1 Numerador001,Numerador002,acesso FROM Numerador_mdfe order by Numerador001";
        using (DbDataReader dataReader = base.GetDataReader(sql,
                                                            parameterList,
                                                            CommandType.Text))
        {
            if (dataReader != null && dataReader.HasRows)
            {
                while (dataReader.Read())
                {
                    Numerador = new Numerador_mdfe();
                    Numerador.Numerador001 = (string)dataReader["Numerador001"].ToString().Trim();
                    Numerador.Numerador002 = Convert.ToInt32(dataReader["Numerador002"]);
                    Numerador.acesso = Convert.ToString(dataReader["acesso"].ToString().Trim());
                    Numerador_Lista.Add(Numerador);
                }
            }
        }
        return Numerador_Lista;
    }

Однако в программе я смотрюдля списка:

DAO_Bases Base = new DAO_Bases();
List<Model.Numerador_mdfe> MDFE_NG;
MDFE_NG = Base.Numerador_Get_id();

Есть ли простой способ преобразовать список типа Numerator_mdfe в объект Numerator_mdfe?

Или просто использовать для каждого и добавлять? Или у кого-то есть лучший подход в этом случае?

Редактировать: В этих случаях он всегда будет возвращать только одну запись.

1 Ответ

0 голосов
/ 17 октября 2019

Возвращает только выбранный объект, а не список объектов:

public Numerador_mdfe Numerador_Get_id()
{
        List<DbParameter> parameterList = new List<DbParameter>();
        Numerador_mdfe Numerador =null;

        string sql = "SELECT top 1 Numerador001,Numerador002,acesso FROM Numerador_mdfe order by Numerador001";
        using (DbDataReader dataReader = base.GetDataReader(sql,
                                                            parameterList,
                                                            CommandType.Text))
        {
            if (dataReader != null && dataReader.HasRows)
            {
                if (dataReader.Read())
                {
                    Numerador = new Numerador_mdfe();
                    Numerador.Numerador001 = dataReader["Numerador001"]?.ToString().Trim();
                    Numerador.Numerador002 = Convert.ToInt32(dataReader["Numerador002"]);
                    Numerador.acesso = dataReader["acesso"]?.ToString().Trim();
                    Numerador_Lista.Add(Numerador);
                }
            }
        }
    return Numerador ;
}

Игнорируются другие очевидные проблемы с кодом

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