SQL Server表:如何基於SQL Server列名填充複選框ID它代表
Name Type1 Type2 Type3 Type4
-----------------------------------------------------
Lance X X X
John X X
Mike X X X
ASP.net:
<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Auto Check" OnClick="Button1_Click" />
<asp:CheckBox ID="Type1" runat="server" /> Type1
<asp:CheckBox ID="Type2" runat="server" /> Type2
<asp:CheckBox ID="Type3" runat="server" /> Type3
<asp:CheckBox ID="Type4" runat="server" /> Type4
C#:
public void Button1_Click(object sender, EventArgs e)
{
string strQuery = @"SELECT * FROM [Db1].[dbo].[Table1] ";
strTxt = txtName.Text;
strQuery += " WHERE [Name] = '" + strTxt + "'";
using (SqlConnection sc = new SqlConnection(gloString))
{
try
{
sc.Open();
SqlCommand scd = new SqlCommand(strQuery);
scd.Connection = sc;
SqlDataReader sdr = new SqlDataReader();
sdr = scd.ExecuteReader();
while (sdr.Read())
{
//use a foreach by column and check them?
}
}
catch (SqlException)
{
}
finally
{
sc.Close();
}
}
}
我知道我可以使用if語句來勾選X
的相應列的任何框。
相反,我怎麼能創建一個foreach
或for
聲明它需要的列名和填充對應於列名的複選框ID,所以我沒有使用大量if
聲明。
因此,如果我輸入Lance作爲名稱並提交,Type1,Type3和Type4將自動檢查。
可以使用CheckBoxList的。運行一個foreach,如果相應的值不爲空,你可以在循環中檢查它。 – Partha