设置<;选择>;从SQL Server数据库表中动态选择下拉列表
本文关键字:选择 动态 下拉列表 数据库 lt gt 设置 SQL Server | 更新日期: 2023-09-27 18:21:08
我正在尝试设置一个下拉列表,以便从SQL Server数据库中的表中提取。我使用带有代码隐藏的aspx将数据提交到SQL Server数据库。最终,我需要做的是在下拉列表中显示客户名称,然后将数据提交到另一个数据库表。使用<asp:DropDownList>
是一个选项,但我是通过name属性提交数据的,并且我不能为asp-webform对象设置特定的名称。到目前为止,我还没有在我的表单中使用php,如果可能的话,我希望保持清晰。
aspx html代码:
<select id="customerName" name="custName" class="txtbxList">
<option></option>
<option></option>
<option></option>
</select>
asp DropDownSOurce和列表标签
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString='<%$ ConnectionStrings:csusaCentralConnection %>' SelectCommand="SELECT [customerNameDD] FROM [customerNameList]"></asp:SqlDataSource>
<asp:DropDownList ID="customerName" CssClass="txtbxList" runat="server" DataSourceID="SqlDataSource1" DataTextField="customerNameDD" DataValueField="customerNameDD"></asp:DropDownList>
我的代码背后:
string coName = Request.Form["custName"];
string generalInfo = @"INSERT INTO generalInfo(CustomerName)VALUES(@custName);
SELECT SCOPE_IDENTITY();
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["csusaCentralConnection"].ConnectionString);
SqlCommand cmd = new SqlCommand(generalInfo, conn);
//NAME of input field in aspx file
cmd.Parameters.AddWithValue("custName", coName);
conn.Open();
string rowIdentity = cmd.ExecuteScalar().ToString();
conn.Close();
看起来您正在使用设计器来设置下拉列表数据源。以下是如何在代码中做到这一点:
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
MyLinqToSqlDataContext db = new MyLinqToSqlDataContext();
var result = from c in db.Customers
select g;
customerName.DataSource = result.ToList();
customerName.DataTextField = "Name";
customerName.DataValueField = "ID";
customerName.DataBind();
...
}
}
从外观上看,您已经完成了大部分工作,您只需要更改这一行:
string coName = Request.Form["custName"];
收件人:
string coName = customerName.SelectedValue;