[英]Joining Linq tables using classes C# WPF Linq
我需要使用我創建的這兩個公共類( PDData和EIDData )將這兩個表( tblProjects和tblEmployeeLoginDetails ) 連接 起來
這是我的聯接代碼,我在其中填充了數據網格:
private void FillProjectsDataGrid()
{
using (DataClassesDataContext DC = new DataClassesDataContext())
{
var Join = (from a in DC.tblEmployeeLoginDetails
join b in DC.tblProjects
on a.LoginID equals b.ProjectID
where b.ProjectID != null
select new
{
b.ProjectID,
b.ProjectName,
b.ProjectStatus,
a.EmployeeName,
a.EmployeeSurname
}).ToList();
dgViewProjects.ItemsSource = Join;
}
}
聯接有效,我可以填充我的數據網格,但是我需要將兩個表中的值等於我創建的兩個類的值。
示例:EIDData.Name = a.EmployeeName
我的班級編碼: PDData :
public struct PDData
{
public string _project;
public int ProjectID { get; set; }
public string Name { get; set; }
public string Status { get; set; }
public string Employee { get; set; }
}
EIDData類:
public struct EIDData
{
public string _sts;
public int UserID { get; set; }
public string Name { get; set; }
public string Surname { get; set; }
public string Email { get; set; }
public string Password { get; set; }
public string Role { get; set; }
public string Department { get; set; }
public string IDNumber { get; set; }
public string Gender { get; set; }
public DateTime Date { get; set; }
public string HomeAddress { get; set; }
public string Telephone { get; set; }
public string City { get; set; }
public string Province { get; set; }
public Binary SetImage { get; set; }
}
我不知道該怎么做。 我想將類與聯接一起使用,因為在datagrid的選擇更改事件中管理所有數據將變得更加容易。
任何有想法或建議的人都將不勝感激! 謝謝。
編輯:這是我為數據網格選擇的更改事件,以防有人需要。
private void dgViewProjects_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
using (DataClassesDataContext DC = new DataClassesDataContext())
{
tblProject tblP = new tblProject();
lblProjectName.Content = tblP.ProjectName.ToString();
}
}
單擊行后,我將收到此錯誤:
Haze.exe中發生了類型為'System.NullReferenceException'的未處理異常
附加信息:對象引用未設置為對象的實例。
也許創建字典
var dict = (from a in DC.tblEmployeeLoginDetails join b in DC.tblProjects on a.UserID equals b.ProjectID select new {key = a.UserID, value = new {employee = a, project = b}}) .ToDictionary(x => x.key, y => y.value) ;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.