J'ai un ensemble de données qui contient des tables d'une base de données universitaire, deux (en fait plus) de ces tables contiennent une relation plusieurs à plusieurs, spécifiquement j'ai a,Naviguer dans une relation Tableaux plusieurs-à-plusieurs dans un ensemble de données (Optimisation)
étudiants tableau (contient des informations sur les élèves) cours Table (contient des informations sur les cours) TakesCourses tableau (ce qui est une table intermédiaire entre les étudiants et Cours tables, chaque étudiant peut avoir de nombreux cours)
Je veux entrer un « ID étudiant » et aller chercher tous les enregistrements des cours tableau selon les documents trouvés dans TakesCourses de table.
Mon code WORKS et il est comme suit:
string stdInfo = string.Empty;
DataRow[] drStudent = null;
DataRow drCourses = null;
DataRow[] drStdCrs = null;
drStudent = universityDS.Tables["Students"]
.Select(string.Format("StudentID='{0}'", txtStudentID.Text));
stdInfo += string.Format("Student {0} {1}:\nTaking Courses:",
drStudent[0]["FirstName"].ToString().Trim(),
drStudent[0]["LastName"].ToString().Trim());
drStdCrs = drStudent[0].GetChildRows(
universityDS.Relations["FK_TakesCourses_Students"]);
//Can I optimize here? Is there a better way to code this
if (drStdCrs.Length > 0)
{
for (int i = 0; i < drStdCrs.Length; i++)
{
drCourses = drStdCrs[i].GetParentRow(
universityDS.Relations["FK_TakesCourses_Courses"]);
stdInfo += string.Format("\nCourse: {0}",
drCourses["CourseName"]);
}
}
MessageBox.Show(stdInfo);
Ma question est, comment puis-je optimiser le code après les commentaires? est-il une meilleure façon d'écrire cela?
(Note: Je suis un développeur récupérais, en essayant de rafraîchir mes compétences)
Merci pour les commentaires, comme je l'ai dit je vais travailler sur Linq API dès demain. –