2014-12-06 8 views
1

DataTextFieldDataValueField을 데이터베이스 테이블의 열에 설정했습니다.데이터베이스 테이블을 중복없이 dropdownlist에 바인드하려고합니다.

DataValueField은 드롭 다운 목록의 값이고 DataTextField은 드롭 다운 목록의 텍스트입니다.

테이블에 반복되는 값이 있습니다. 드롭 다운 목록에는 텍스트 필드에있는 중복 값도 표시됩니다. DataTextfield에 반복되는 값이 있지만 고유 한 값을 드롭 다운 목록에 넣고 싶습니다.

SqlConnection con = new SqlConnection(CS); 

SqlCommand cmd = new SqlCommand("Select DoctorId, Location from DoctorR", con); 
con.Open(); 

ddlLocation.DataSource= cmd.ExecuteReader(); 
ddlLocation.DataTextField = "Location"; 
ddlLocation.DataValueField = "DoctorId"; 
ddlLocation.DataBind(); 

ListItem liLocation = new ListItem("Select Location", "-1"); 
ddlLocation.Items.Insert(0, liLocation); 

con.Close(); 

Location 열이 반복되었습니다 값 :

아래는 지금까지 내 코드입니다. 중복 값이 ​​드롭 다운 목록에 바인딩되는 것을 원하지 않습니다.

+1

을 시도해보십시오.하지만 반복되는 'Location'이지만 다른 'DoctorId'값이있는 행이 5 개있는 경우 - ** 그 5 개의 행 중 ** 하나를 표시하려고합니까?!?! ?!? –

+0

첫 번째 행 –

+0

해결 되었습니까? 아래 의견을 따르셨습니까? – jfun

답변

2

데이터베이스에서 데이터를 검색 할 때 데이터 소스에서 키워드를 사용해야하므로 값이 중복되지 않습니다. 단지 sqlcommand에서 Select DISTINCT DoctorId,Location from DoctorR 대신 Select DoctorId,Location from DoctorR

+0

'위치'에 고유 한 특성이 적용되지 않습니다. 어떤 방법은 중복을 얻는 방법입니다. –

+0

그래서 같은 위치에있는 여러 가지 DoctorIds가 있다는 뜻입니까? 예? – jfun

+0

예 ... 동일한 위치의 여러 DoctorIds가있는 경우 –

관련 문제