Я разрабатываю приложение Web Api с использованием Entity Framework, где у меня есть эти две модели и мой класс DbContext:
public class Course
{
[Key]
public int CourseId { get; set; }
[Required]
public string CourseName{ get; set; }
public ICollection<Students> Students { get; set; }
}
public class Students
{
[Key]
public int StudentId { get; set; }
[Required]
public string StudentName{ get; set; }
[Required]
public int StudentAge{ get; set; }
}
//My CourseContext
public class CourseContext : DbContext
{
public CourseContext () : base("CourseDB") { }
public DbSet<Course> Courses { get; set; }
public DbSet<Students> Students { get; set; }
}
Я моделирую WebAPi с этими моделями выше, и мне нужно перечислить всех студентов, которыепроходят курс, что означает, что они добавляются к свойству ICollection Студенты в классе курса.Я пытался разработать решение для этого, но я понятия не имею, как это сделать, так как у меня нет свойства внешнего ключа между моделями.
...
using (var course_db = new CourseContext ()){
/*but this return all students and repeated ones since one student
can be in more than one course*/
var students= course_db.Course.Include("Students").Select(x=> x.Students);
if (students== null){
return Json(new { success = false });
}
return Json(students, JsonRequestBehavior.AllowGet);
}
...
Я пробовал приведенный ниже код, но это не такРабота.Я просто хочу найти студентов, которые записаны на курс, так как некоторые из них нет.Кто-нибудь может мне помочь?