それらの主キー名がそれらのテーブルで異なる場合、データキー名を使用して異なるテーブルの主キーにアクセスする方法があるかどうか疑問に思っています。
たとえば、主キーがそれぞれ Table1ID と Table2ID である Table1 と Table2 というテーブルがあります。
私の最終的な目標は、両方のテーブルの内容を 1 つのグリッドビューに結合し、両方の行に対してハイパーリンクを生成することです。したがって、私のc#は次のようになります。
protected void Page_Load(object sender, EventArgs e)
{
SqlCommand command = new SqlCommand("(SELECT Table1ID, Title FROM Table1" +
"UNION ALL SELECT Table2ID, Title FROM Table2)", connection);
GridView1.DataBind();
}
次に、Gridview_Databound メソッドで、各行のハイパーリンクを個別に設定します。問題は、Table1ID と Table2ID にアクセスする方法です。私の .aspx コードでは、DataField に一貫性がないため、これを BoundField に設定できますか? Table2ID を無視しているため、次のことはできません。
<asp:BoundField DataField="Table1ID"/>
多分私はtemplateFieldか何かを使う必要がありますか?