PDA

View Full Version : اشکال با DataList



baidin
یک شنبه 07 آذر 1395, 23:10 عصر
سلام
یک کنترل DataList دارم (dlNewsCat) که با کد زیر دیتا سورس این کنترل را مشخص می کنم ولی داده ها نمایش داده نمی شوند. برای اینکه اطمینان داشته باشم دریافت اطلاعات از بانک اطلاعاتی مشکلی ندارد یک گرید ویو نیز قرار دادم و این کد را تست کردم و مشکلی نداشت و داده ها را نشان میدهد ولی در دیتالیست نمایش نمی دهد:



SqlConnection Con = new SqlConnection();
SqlCommand Com = new SqlCommand();
SqlDataReader Dr;
Con.ConnectionString = "........";
Com.CommandText = "Select CatName from tblNewsCat order by CatName ";
Com.Connection = Con;
Con.Open();
Dr = Com.ExecuteReader();
System.Data.DataTable dt=new System.Data.DataTable();
dt.Columns.Add("CatName",typeof(string));



if (Dr.HasRows )
{
while(Dr.Read())
{
string st =(string) Dr["CatName"];
dt.Rows.Add(new object[] { st.ToString() });

}
dlNewsCat.DataSource =dt;
dlNewsCat.DataBind();


GridView1.DataSource = dt;
GridView1.DataBind();

علیرضا5
یک شنبه 07 آذر 1395, 23:32 عصر
سلام بجای dt.Rows.Add بنویس dt.Items.Add

baidin
دوشنبه 08 آذر 1395, 00:24 صبح
سلام بجای dt.Rows.Add بنویس dt.Items.Add

با تشکر از پاسخ شما
دوست عزیز چنین دستوری وجود نداره و خطا میده
متشکرم

taze kar 1
دوشنبه 08 آذر 1395, 09:18 صبح
سلام
لطفا ابتدا
using System.Data;
رو بنویس بعدش

DataView dv = new DataView(dt);

dlNewsCat.DataSource =dv;


امیدوارم مشکلت حل شه

baidin
دوشنبه 08 آذر 1395, 13:26 عصر
سلام
لطفا ابتدا
using System.Data;
رو بنویس بعدش

DataView dv = new DataView(dt);

dlNewsCat.DataSource =dv;


امیدوارم مشکلت حل شه
دوست عزیز این راه خطا میده
متشکرم

An exception of type 'System.ArgumentException' occurred in System.Web.dll but was not handled in user code


Additional information: An invalid data source is being used for dlNewsCat. A valid data source must implement either IListSource or IEnumerable.

baidin
دوشنبه 08 آذر 1395, 13:40 عصر
مشکل حل شد. از دوستانی که راهنمایی کردند متشکرم.بایستی این کد را اضافه می کردم:


<ItemTemplate>
<asp:Label ID="CatNameLabel" runat="server" Text='<%# Eval("CatName") %>' />
</ItemTemplate>