1

DB に Student、StudentCourse という 2 つのテーブルがあるとします。

Student のメタ データで、StudentCourse を Composite として設定します。

[Include]
[Composition]
public EntityCollection<StudentCourse> StudentCourses { get; set; }

学生用のドメイン サービスに、次のような StudentCourse を含めます。

public IQueryable<Student> GetStudentByID(int id)
{
   reutrn this.ObjectContext.Students.Include("StudentCourse").Where(s => s.ID == id) as IQueryable<Student>;
}

質問: StudentCourse のレコードを StudentCourses の列 (CourseID など) でソートできるようにしたいと考えています。

1 人の生徒の下にある StudentCourse のレコードは、実際には StudentCourse のエンティティ コレクションです。

この問題を解決するにはどうすればよいですか?

4

1 に答える 1

0

あなたが求めていることは、プレーンな SQL でも実行できません。プロバイダーがそのようなものをサポートしているかどうかを試すことができます

this.ObjectContext.Students.Include("StudentCourse").Where(s => s.ID == id).OrderBy(x=> x.StudentCourse.First().CourseId) as IQueryable<Student>
于 2012-09-18T06:52:37.933 に答える