i have table that has 3 foregin key now i want show that in a gridview, the class of table
[Key]
[Required]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column("FldKeyId")]
public int MyKeyId { get; set; }
[Required]
public virtual Machine Machine { get; set; }
[Required]
public virtual Employee Employee { get; set; }
[Required]
public virtual Shift Shift { get; set; }
[Required]
[Column ("FldStartTime")]
public DateTime MyStartTime { get; set; }
[Required]
[Column ("FldEndTime")]
public DateTime MyEndTime { get; set; }
[Column("FldModificationDate")]
[Required]
public DateTime ModificationDate { get; set; }and that is the code for bind to grid view
void RefreshBreakGrid()
{
dgvcolDate.DataPropertyName = "ModificationDate";
dgvcolstarttime.DataPropertyName = "MyStartTime";
dgvcolendtime.DataPropertyName = "MyEndTime";
dgvcolemployee.DataSource = Employee.GetAllEmployee();
dgvcolemployee.DisplayMember = "MyName";
dgvcolemployee.ValueMember = "MyKeyId";
dgvcolemployee.DataPropertyName = "Employee";
dgvcolmachine.DataSource = Machine.GetAllMachine();
dgvcolmachine.DisplayMember = "MyName";
dgvcolmachine.ValueMember = "MyKeyId";
dgvcolmachine.DataPropertyName = "Machine";
dgvcolshift.DataSource = Shift.GetAllShift();
dgvcolshift.DisplayMember = "MyName";
dgvcolshift.ValueMember = "MyKeyId";
dgvcolshift.DataPropertyName = "Shift";
_Breaks=Break.GetAllBreak();
dgvBreak.AutoGenerateColumns = false;
dgvBreak.DataSource = _Breaks;
}
for example methode of getall company:
public static List<Break> GetAllBreak()
{
return new ContexManager().Breaks.Where(c => c.MyKeyId != 0).Include(c => c.Machine).Include(c => c.Employee).Include(c => c.Shift).ToList();
}and when i run this code gridview shown classLibrary.classes.shift fro
shift field what i have to do show the currect value in gridview. i have use winforms and codeFirst entity framework