5 프레임 워크, 데이터베이스에서 관계형 외래 키를 사용하지 않고, 어떻게 여러 개의 테이블을 여러 번 조인 한 후에 여러 객체를 다시 전달해야하는지에 대해 4.0에서이 정크 코드가 어떻게 향상되는지 궁금합니다.3.5 VS 4.0 .NET Framework
public IList<User> GetTutorByCourseId(int courseId)
{
IList<User> output = new List<User>();
using (leDataContext db = new leDataContext())
{
try
{
var m = from c in db.Courses
join ct in db.CourseByTutors on c.Id equals ct.CourseId
join u in db.Users on ct.TutorId equals u.Id
where c.Id == courseId
select new
{
c, ct, u
};
foreach (var result in m)
{
User user = new User();
user.Id = result.u.Id;
user.Name = result.u.Name;
user.CourseTutor.Id = result.ct.Id;
user.Course.Name = result.c.Name;
output.Add(user);
}
return output;
}
catch (Exception ex)
{
Logger.Error(typeof(User), ex.ToString());
throw;
}
}
}
GUI에서 호출자에게 반환되는 개체가 3 개 있습니다. 그러나이 작업을 수행하려면 public 클래스 CourseByTutors {get; set} 및 공용 클래스 (get; set;)의 속성을 User 클래스에 추가해야합니다.이 클래스는 코드를 엉망으로 만듭니다. 이 경우 어떻게 4.0을 해결할 수 있습니까? 내가 선택한 투플 ..에 대해 뭔가 읽었 어 ??
3.5, AFAIK에서 튜플 또는 적어도 동적 유형을 선택할 수 있습니다. –
위의 코드를 변환하여 예제를 보여 주시겠습니까? 나는 실제로 4.0으로 변환할지 여부를 결정하고 있습니다. – VeecoTech