Behrang_a
شنبه 14 اسفند 1389, 09:34 صبح
من یک Gridview دارم که بصورت داینامیک BoundField میسازم و به یک LINQ چند جدوله مرتبطش میکنم
این LINQ از دو تا جدول مرتبط تشکیل شده که یکی اسمش CertificateType هست که از طریق یک EID با جدول دیگری به اسم Equipment در ارتباط است. جدول اول ستونهای (CID,Name,EID) را دارد و جدول دوم (EID,EName)
بصورت عادی در کد نویسی میتوان به راحتی از یک شئ از جنس CertificateType از Query استخراج کنیم به راحتی به ستونهای جدول Equipment که با جدول CertificateType مرتبط هستند دسترسی داشت :
CertificateType Cert = new CertificateType();
string Name = Cert.Equipment.EName;
مشکل من در اتصال این LINQ به صورت داینامیک به Gridview هست، در حالتی که من انجام میدم اطلاعات جدول اول متصل میشود اما راهی پیدا نمیکنم که اطلاعات جدول Equipment را بازیابی کنم
IQueryable<CertificateType> CTList = CertificateTypeSearch();
GridView1.DataSource = CTList;
//Setting DataKeyNames
GridView1.DataKeyNames = new string[] { "CID", "Name"};
//Binding Data by creating BoundField
BoundField Name = new BoundField();
Name.DataField = "Name";
Name.HeaderText = "Name";
BoundField EquipmentName = new BoundField();
EquipmentName.DataField = "Equipment.EName";
EquipmentName.HeaderText = "Equipment Name";
GridView1.Columns.Add(Name);
GridView1.Columns.Add(EquipmentName);
GridView1.DataBind();
public static IQueryable<CertificateType> CertificateTypeSearch()
{
DataClassesDataContext context = new DataClassesDataContext();
var CertType = (from certificateType in context.CertificateTypes
select certificateType);
return CertType;
}
ستون Name متصل میشود اما Equipment.EName مشکل ساز است.
حالا کسی تجربه این کار رو اگه داره ممنون میشم راهنمایی کنه
این LINQ از دو تا جدول مرتبط تشکیل شده که یکی اسمش CertificateType هست که از طریق یک EID با جدول دیگری به اسم Equipment در ارتباط است. جدول اول ستونهای (CID,Name,EID) را دارد و جدول دوم (EID,EName)
بصورت عادی در کد نویسی میتوان به راحتی از یک شئ از جنس CertificateType از Query استخراج کنیم به راحتی به ستونهای جدول Equipment که با جدول CertificateType مرتبط هستند دسترسی داشت :
CertificateType Cert = new CertificateType();
string Name = Cert.Equipment.EName;
مشکل من در اتصال این LINQ به صورت داینامیک به Gridview هست، در حالتی که من انجام میدم اطلاعات جدول اول متصل میشود اما راهی پیدا نمیکنم که اطلاعات جدول Equipment را بازیابی کنم
IQueryable<CertificateType> CTList = CertificateTypeSearch();
GridView1.DataSource = CTList;
//Setting DataKeyNames
GridView1.DataKeyNames = new string[] { "CID", "Name"};
//Binding Data by creating BoundField
BoundField Name = new BoundField();
Name.DataField = "Name";
Name.HeaderText = "Name";
BoundField EquipmentName = new BoundField();
EquipmentName.DataField = "Equipment.EName";
EquipmentName.HeaderText = "Equipment Name";
GridView1.Columns.Add(Name);
GridView1.Columns.Add(EquipmentName);
GridView1.DataBind();
public static IQueryable<CertificateType> CertificateTypeSearch()
{
DataClassesDataContext context = new DataClassesDataContext();
var CertType = (from certificateType in context.CertificateTypes
select certificateType);
return CertType;
}
ستون Name متصل میشود اما Equipment.EName مشکل ساز است.
حالا کسی تجربه این کار رو اگه داره ممنون میشم راهنمایی کنه