"MaleTeachers"테이블에 남성 교사 만 삽입하려고했지만 프로그램이 실행 된 후 해당 테이블에 교사가 하나만 나타납니다. 또한, "Stuffs"테이블에 교사가 한 명 이상 있지만 "if"기준과 일치하는 사람은 마지막에 삽입 된 사람입니다. 이 코드를 수정 해주십시오. 서비스 구현 :LinQ 쿼리, 하나의 레코드 만 제출/삽입 됨
public void AddTeachers()
{
DataClasses1DataContext data = new DataClasses1DataContext();
DataClasses2DataContext data2 = new DataClasses2DataContext();
MaleTeacher tchr = new MaleTeacher();
foreach (var d in data.Stuffs)
{
if (d.stuffSex == true && d.stuffJob == "Teacher")
{
tchr.teacherName = d.stuffName;
tchr.teacherAge = d.stuffAge;
tchr.teacherJob = d.stuffJob;
tchr.teacherDepartm = "geology";
data2.MaleTeachers.InsertOnSubmit(tchr);
}
}
data2.SubmitChanges();
}
'foreach' 루프 내에서'tchr' 선언을 옮기는 것이 좋습니다. –
위로 가기 MaleTeach를 foreach 루프로 이동하십시오. Y 마지막 교사 만 삽입하고 있습니다. – sdrzymala
명확성을 위해 data2.MaleTeachers.InsertOnSubmit (New MaleTeacher() {...}); –