"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment puis-je convertir efficacement un DataReader en une liste dans .NET?

Comment puis-je convertir efficacement un DataReader en une liste dans .NET?

Publié le 2025-02-02
Parcourir:790

How Can I Efficiently Convert a DataReader into a List in .NET?

Données de traitement efficaces: convertir dataReader en liste

Lors du traitement des données dans l'environnement .NET, vous devrez peut-être convertir le DataReader (un flux de données qui se lit uniquement) en formats plus faciles à gérer, tels que la liste . Cette conversion vous permet d'accéder et de traiter plus efficacement les données structurées. solution: extension

Une méthode de conversion consiste à utiliser la méthode d'extension. L'exemple est le suivant:

public static ienumerable select (ce lecteur iDAreader, Func Projet) {{ While (reader.read ()) {{ Projet de rendement de rendement (lecteur); } } Cette méthode d'expansion vous permet de sélectionner des données dans le facteur de données avec une fonction de projection et de la convertir en ienumeration

.

Comment utiliser la méthode d'utilisation
public static IEnumerable Select(this IDataReader reader,
                                       Func projection)
{
    while (reader.Read())
    {
        yield return projection(reader);
    }
}
, vous pouvez utiliser le code suivant:

Utilisation (IdAreader Reader = ...) {{ Liste clients = Reader.Select (r => nouveau client { CustomerId = r ["id"] est dbnull? Cusomername = r ["name"] est dbnull? }). }

Cet exemple convertit la ligne dans le DataReader en une liste de l'objet client. Méthode alternative: méthode spéciale pour les types physiques

ou, vous pouvez créer une méthode statique dédiée dans l'entité client:

Client statique public FromDataReader (lecteur iDataReader) {...}
using (IDataReader reader = ...)
{
    List customers = reader.Select(r => new Customer {
        CustomerId = r["id"] is DBNull ? null : r["id"].ToString(),
        CustomerName = r["name"] is DBNull ? null : r["name"].ToString()
    }).ToList();
}

En utilisant cette méthode, vous pouvez simplifier le processus de conversion:

Utilisation (IdAreader Reader = ...) {{ Liste Clients = Reader.Select Avec ces technologies, vous pouvez convertir efficacement des données dans DataReader en liste

pour utiliser les fonctions puissantes de LINQ pour plus de fonctionnement et de traitement des données.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3