0
私は同じクラスタイプの2つのリストを持っています。1つのリストの1つのフィールド値を、別の1つのリストの別の同じフィールドに更新する方法はありますか?
List<CUSTOM_STU_DETAIL> StuList = new List<CUSTOM_STU_DETAIL>();
List<CUSTOM_STU_DETAIL> StuListforRollNo = new List<CUSTOM_STU_DETAIL>();
私は2つのテーブルから1つのリストを取得しています。
StuList = (from a in db.Student_Re_Admission
join b in db.Student_Registration on a.Registration_Id equals b.Registration_Id
where a.Academic_Year_Id == AcademicId && a.Company_ID == CompanyId
&& a.COMPANY_LOCATION_ID == CompanyLocationId
&& a.Class_Id == ClassID && a.Section_Id == SectionID
&& a.Promoted == false && b.Delete_Flag == false
select new CUSTOM_STU_DETAIL
{
Registration_Id = a.Registration_Id,
Admission_No = a.Admission_No,
STUDENT_NAME = a.Student_First_Name + " "+a.Student_Middle_Name + " " + a.Student_Last_Name,
Class_Id = ClassID,
Section_Id = SectionID,
Academic_Year_Id = AcademicId,
Company_Id = CompanyId,
Company_Location_Id = CompanyLocationId
//RollNo = c.Set_Roll_No,
}).OrderBy(a => a.Admission_No).ToList();
ので、今賢明な最初のリストループで同じ条件で他のテーブルからいくつかの値を取得したい。..
foreach (var obj in StuList)
{
var rollNoRecord = db.Student_Roll_No_Assign.FirstOrDefault(a => a.Company_ID == obj.Company_Id && a.COMPANY_LOCATION_ID == obj.Company_Location_Id && a.Academic_Year_Id == obj.Academic_Year_Id && a.Class_Id == obj.Class_Id && a.Delete_Flag == false);
if (rollNoRecord != null)
{
data.RollNo = rollNoRecord.Set_Roll_No;
}
else
{
data.RollNo = string.Empty;
}
StuListforRollNo.Add(data);
}
ので、今最初のリストにデータの「SetRollNo」フィールドのリストを挿入したいです'SetRolNo'フィールド。
私は以下のようにしようとしていますが、私が意味するものは得られません。
1) var listfinal = StuList.Concat(StuListforRollNo);
2) var listfinal = StuList.Union(StuListforRollNo);
3) var listfinal = StuList.AddRange(StuListforRollNo);
すべてのデータをマージしている..あなたは、foreachループ内で値を変更していないのはなぜ
ああthanq..Iは、そのロジックを取得できませんでした。 –