-1
votes

Ajout de la liste à une liste

Je ne sais pas quelle serait la meilleure approche pour ce problème que j'ai.

J'ai un objet Etude forte>, où dans chaque "forte> études forte> peut avoir Un multiple tanks forts> assigné à celui-ci. Ensuite, sur chaque tank forte> attribué à cette étude forte> contient forte> contenant journaux forts>. Je pense que je pouvais l'obtenir, en obtenant la liste des réservoirs attribués à cette étude, puis boucle de chaque élément de la liste de liste pour obtenir la liste des journaux pour chaque réservoir. P>

si je retourne List CODE> Pour obtenir les journaux de chaque réservoir attribué à cette étude, comment puis-je retourner list code> à partir de Liste code> code> code> qui est assigné à étudier? p> xxx pré>

J'ai créé également une vue de menu pour contenir la liste des journaux de chaque réservoir attribué à l'étude. P>

public static List<ListOfLogs> GetLogs(Guid StudyId) {
    var StudyLogs = new List<ListOfLogs>;
    
    var AssignedTanks = new List<Tanks>();
    
    //Get the assigned tanks for the study
    AssigendTanks = Study.GetTank(StudyID);
    
    Guid _TankId;
    //Loop to get the logs of each tanks
    For(int i = 0; i < AssignedTanks.Count; i++) {
            var GetLogs = new List<Logs>;

            _TankId = AssignedTanks[i].TankId;

            //Get the Logs of each tanks;
            GetLogs = Logs.GetLogs(StudyId, _TankId);

            //Add List<Logs> to List<ListOfLogs>
            StudyLogs.add(GetLogs);
    }

    return StudyLogs;
 }


2 commentaires

Pour que votre question plus facile à comprendre, veuillez afficher les classes.


Désolé pour la question peu claire. J'ai ajouté les cours maintenant.


3 Réponses :


0
votes
List<Study> studies;

List<Log> logs = studies
    .SelectMany(s => s.Tanks.SelectMany(t => t.Logs))
    .ToList();
SelectMany flattens a nested collection.

1 commentaires

Désolé pour une question si claire. J'ai ajouté la classe pour une question plus claire. Si Selectmany aplatit une collection imbriquée, puis-je obtenir uniquement le résultat, par exemple les grumes de réservoir 1?



1
votes

Si vous avez raison, un moyen d'obtenir toutes les journaux de tous les réservoirs d'une étude, c'est de le faire: xxx

maintenant, vous pouvez retourner alllogs à partir d'une méthode, d'une propriété ou si vous êtes à l'aise.


0 commentaires

0
votes

Il y a un problème avec vos relations, ajoutez des études au réservoir de classe et retirez-la des journaux de classe. Ou ajoutez une liste des journaux à la classe d'étude et d'y accéder comme une propriété, si vous envisagez la classe de journal, envisagez l'étude et le réservoir indépendant.


0 commentaires