데이터 테이블이 채워지지만 필드 중 하나가 데이터베이스 연결에서 파생 된 드롭 다운 목록입니다. 추가를 클릭하면 내 선택에도 불구하고 항상 동일한 데이터를 추가 한 다음 목록의 첫 번째 항목을 제거합니다.C# DataTable 테이블에서 데이터 추가
ASPX 코드 드롭 다운 목록이 문제를 해결하는 방법에 대한
public void Fill1()
{
string connectionString = WebConfigurationManager.ConnectionStrings["CRM2Sage"].ConnectionString;
using (SqlConnection _con = new SqlConnection(connectionString))
using (SqlCommand cmd = new SqlCommand("SELECT * FROM Products", _con))
{
cmd.Connection.Open();
SqlDataReader ddlValues;
ddlValues = cmd.ExecuteReader();
txtProduct.DataSource = ddlValues;
txtProduct.DataValueField = "Description";
txtProduct.DataTextField = "Description";
txtProduct.DataBind();
cmd.Connection.Close();
cmd.Connection.Dispose();
}
}
어떤 생각을위한
<asp:TableCell><asp:DropDownList runat="server" ID="txtProduct"></asp:DropDownList></asp:TableCell>
CS 코드?
사이드 바 : 'DropDownList'의 이름은 txtProduct'입니까? 이 ID를 가진 컨트롤은 Textbox라고 가정합니다. 귀하의 질문에 : DropDownList 바인딩 경우에만'! Page.IsPostBack'? –
'DataBind '에 대한 호출이 선택 항목을 첫 번째 항목으로 재설정한다는 것을 알게 될 것입니다. –
또한'cmd.Connection.Close'와'cmd.Connection.Dispose'를 호출 할 이유가 없습니다. 명령과 연결이'using' 블록에 있기 때문입니다. 자동으로 처리됩니다. –