Je ne sais pas quelle serait la meilleure approche pour ce problème que j'ai.
J'ai un objet si je retourne J'ai créé également une vue de menu pour contenir la liste des journaux de chaque réservoir attribué à l'étude. P> List list Liste 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;
}
3 Réponses :
List<Study> studies;
List<Log> logs = studies
.SelectMany(s => s.Tanks.SelectMany(t => t.Logs))
.ToList();
SelectMany flattens a nested collection.
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?
Si vous avez raison, un moyen d'obtenir toutes les journaux de tous les réservoirs d'une étude, c'est de le faire: maintenant, vous pouvez retourner alllogs code> à partir d'une méthode, d'une propriété ou si vous êtes à l'aise. p> p>
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. P>
Pour que votre question plus facile à comprendre, veuillez afficher les classes.
Désolé pour la question peu claire. J'ai ajouté les cours maintenant.