2015-05-25 104 views
0
Baglanti.FnkBaglan(); 
SqlCommand DropDown = new SqlCommand("SELECT * FROM [Yazar]", Baglanti.baglan); 
SqlDataAdapter Adp = new SqlDataAdapter(DropDown); 
DataSet ds = new DataSet(); 
Adp.Fill(ds); 
DrpYazarSec.DataTextField = ds.Tables[0].Columns["Yazar_isim"].ToString() + " " + ds.Tables[0].Columns["Yazar_soyisim"].ToString(); 
DrpYazarSec.DataValueField = ds.Tables[0].Columns["YazarID"].ToString(); 
DrpYazarSec.DataSource = ds.Tables[0]; 
DrpYazarSec.DataBind(); 

我用這個代碼,但這個錯誤發生;附加信息:DataBinding:'System.Data.DataRowView',Yazar_isim Yazar_soyisimadındabirözellikiçermiyor。 (一直沒有Yazar_isim Yazar_soyisim)DataRowView問題,當我嘗試從數據庫中填充DropDownList

+0

我認爲你需要用英語寫您的文章,而不是土耳其 – Dusan

+0

@Dusan:很好,他需要把這種錯誤信息。事實上,他應該包括完整的例外,包括堆棧跟蹤。 –

+0

附加信息:DataBinding:'system.data.datarowview'不包含名爲Yazar_isim Yazar_soyisim的功能。 – ygzmglkc

回答

0

問題是由這個代碼導致的:

DrpYazarSec.DataTextField = ds.Tables[0].Columns["Yazar_isim"].ToString() + " " + 
          ds.Tables[0].Columns["Yazar_soyisim"].ToString(); 

不能綁定文本多列,這是不可能的。

但是,您可以在查詢中加入兩列,例如:

SqlCommand DropDown = new SqlCommand("SELECT *, 
    [Yazar_isim] + ' ' + [Yazar_soyisim] AS [FullName] 
    FROM [Yazar]", Baglanti.baglan); 

... 

DrpYazarSec.DataTextField = "FullName"; 
DrpYazarSec.DataValueField = "YazarID"; 

... 
+0

謝謝,它工作。 – ygzmglkc