7
votes

Structure de données de table en mémoire

Je voudrais construire une structure de données de table en mémoire avec 4 colonnes afin que je puisse rechercher des valeurs en fonction de toute combinaison des colonnes (à l'aide de LINQ par exemple). Y a-t-il un type de données intégré pour cela ou dois-je m'engager un moi-même (évidemment je ne peux pas)?


0 commentaires

8 Réponses :


2
votes

1 commentaires

C'était rapide. Merci. J'avais l'habitude de penser que le genre était destiné uniquement à la base de données et de choses.



3
votes

Si vous utilisez .NET Framework 4.0 Vous pouvez utiliser TUPLE!

Regardez ici:

tuple en C # 4.0 < / p>


0 commentaires

1
votes

Que diriez-vous simplement:

var dataStructure = new[] {
    new { col1 = "something", col2 = "something else", col3 = 12, col4 = true },
    new { col1 = "ha", col2 = "ha ha", col3 = 356, col4 = false },
    new { col1 = "grrr", col2 = "grr grr", col3 = 213, col4 = true }
};


0 commentaires


3
votes

J'imagine que vous voulez probablement utiliser quelque chose comme une liste >


0 commentaires

1
votes

Vous pouvez utiliser un dataTable ou même peupler une liste qui adhérerait aux types de données de votre besoin. Fourcolclass serait une classe avec des propriétés comme colonnes.


0 commentaires

6
votes

sauf si vous avez quelque chose de spécifique à l'esprit, je déclare un type avec 4 propriétés avec des noms et des types appropriés, c'est-à-dire xxx

et utilisez n'importe quelle liste / tableau / dictionnaire, etc. Si nécessaire, ouc. juste xxx

etc.


1 commentaires

Existe-t-il un concept d'indexation / un moyen d'améliorer les interrogations sur la collection de certains domaines? Je suppose que vous auriez que vous devriez créer des dictionnaires avec la clé composée des champs de requête et les résultats étant une référence à l'objet sous-jacent associé; Mais cela ne se sent pas aussi propre que simplement dire "cette collection détient ces objets; les propriétés que j'aimerais optimiser pour les requêtes sont celles-ci".



4
votes

Vérifiez DataTable classe.


0 commentaires