私はエンティティフレームワークでエクストラグリッドを使用しています。2つのSQLテーブルがあります。gridControl1にpartnersテーブルを表示し、gridControl2にpartner_contactsテーブルを表示します。gridControl1とgridControl2をどのように関連付けることができますか。gridControl1の行をクリックすると、gridControl2の関連する行が表示されます。
1番目のテーブル:partners-partnerId-partnerName
2番目のテーブル:partner_contacts-partner_contactsId-partner_contactsName-partner_contacts_partner_FK
public partial class frmPartnersList : DevExpress.XtraEditors.XtraForm
{
ValinorEntities valinor = new ValinorEntities();
public frmPartnersList()
{
InitializeComponent();
gridControl1.DataSource = valinor.partners;
gridControl2.DataSource = valinor.partner_contacts;
}
}
私はこれを試しました:
object obj = gridView1.GetRowCellValue(gridView1.GetSelectedRows()[0], gridView1.FocusedColumn.FieldName);
string obj2 = obj.ToString();
var selectedPartner = valinor.partners.Where(p => p.partnerId = obj2).FirstOrDefault();
if (selectedPartner != null)
gridControl2.DataSource = selectedPartner.partner_contacts;
2つのエラーがありました:
デリゲート型ではないため、ラムダ式を型'string'に変換できません
タイプ'string'を'int'に暗黙的に変換することはできません
デリゲート'System.Func'は1つの引数を取りません
このコードの場合:(p => p.partnerId = obj2)