У меня есть форма, где, когда он был создан, он будет этот запрос
public IQueryable<PatientInfo> showMyPatients()
{
DbClassesDataContext myDb = new DbClassesDataContext(dbPath);
var patientInfo = from patients in myDb.PatientInfos
where patients.Phy_ID == physcianID
select patients;
return patientInfo;
}
Как только я позвоню, я вставлю его в переменную и передам здесь в качестве параметров
public void fillDataGrid(IQueryable<PatientInfo> patients)
{
dgvMyPatients.DataSource = patients;
}
Звучит просто, верно? но когда я запускаю этот запрос
private IQueryable<PatientInfo> searchPatient()
{
DbClassesDataContext myDb = new DbClassesDataContext(dbPath);
var search = from myPatients in myDb.PatientInfos
where (myPatients.Pat_ID == patient_ID && myPatients.Pat_First_Name.Contains(txtSearch.Text)) ||
(myPatients.Pat_ID == patient_ID && myPatients.Pat_Last_Name.Contains(txtSearch.Text)) ||
(myPatients.Pat_ID == patient_ID && myPatients.Pat_Middle_Name.Contains(txtSearch.Text))
select myPatients;
return search;
}
и передать его в качестве параметра fillDataGrid()
, DataGrid будет иметь пустое значение, даже если в этом запросе есть результат
BindingSource bs = new BindingSource();
bs.DataSource = searchPatient();
dgvMyPatients.DataSource = bs;
ПРИМЕЧАНИЕ. Оба запроса возвращают PATIENTINFO, и я буду вставлять в одну и ту же DataGrid