PDA

View Full Version : خطا در مورد مقدار دهی به هر دوی DataSource و DataSourceID



mosi123
سه شنبه 22 تیر 1389, 02:43 صبح
علت این خطا چیست. لطفا راهنمایی کنید.
Both DataSource and DataSourceID are defined on 'GridView1'. Remove one definition.




protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
{
string sortExpression = e.SortExpression;
if (GridViewSortDirection == SortDirection.Ascending)
{
GridViewSortDirection = SortDirection.Descending;
SortGridView(sortExpression,DESCENDING);
}
else
{
GridViewSortDirection = SortDirection.Ascending;
SortGridView(sortExpression, ASCENDING);
}
}
private const string ASCENDING = " ASC";
private const string DESCENDING = " DESC";
private void SortGridView(string sortExpression, string direction)
{

// You can cache the DataTable for improving performance

DataTable dt = GetData().Tables[0];
DataView dv = new DataView(dt);
dv.Sort = sortExpression + direction;
GridView1.DataSource = dv;
GridView1.DataBind();
}



این هم نحوه تعریف کنترل GridView:


<asp:GridView ID="GridView1" runat="server" AllowSorting="True"
OnSorting="GridView1_Sorting" AutoGenerateColumns="False"
DataKeyNames="CategoryID" DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="CategoryID" HeaderText="CategoryID"
InsertVisible="False" ReadOnly="True" SortExpression="CategoryID" />
<asp:BoundField DataField="CategoryName" HeaderText="CategoryName"
SortExpression="CategoryName" />
<asp:BoundField DataField="Description" HeaderText="Description"
SortExpression="Description" />
</Columns>
</asp:GridView>


با تشکر

hoorfar
سه شنبه 22 تیر 1389, 05:12 صبح
دستور
GridView1.DataSource = dv;
رو از کدی که نوشتی حذف کن

توی Grid یا باید به DataSource مقدار بدی یا به DataSourceId
فقط به یکیشون

amirjalili
سه شنبه 22 تیر 1389, 10:14 صبح
سلام ..
http://barnamenevis.org/forum/showthread.php?p=1039383#post1039383

aminghaderi
سه شنبه 22 تیر 1389, 10:58 صبح
علت این خطا چیست. لطفا راهنمایی کنید.
Both DataSource and DataSourceID are defined on 'GridView1'. Remove one definition.



protectedvoid GridView1_Sorting(object sender, GridViewSortEventArgs e)
{
string sortExpression = e.SortExpression;
if (GridViewSortDirection == SortDirection.Ascending)
{
GridViewSortDirection = SortDirection.Descending;
SortGridView(sortExpression,DESCENDING);
}
else
{
GridViewSortDirection = SortDirection.Ascending;
SortGridView(sortExpression, ASCENDING);
}
}
privateconststring ASCENDING = " ASC";
privateconststring DESCENDING = " DESC";
privatevoid SortGridView(string sortExpression, string direction)
{

// You can cache the DataTable for improving performance


DataTable dt = GetData().Tables[0];

DataView dv = newDataView(dt);
dv.Sort = sortExpression + direction;
GridView1.DataSource = dv;
GridView1.DataBind();
}

این هم نحوه تعریف کنترل GridView:


<asp:GridView ID="GridView1" runat="server" AllowSorting="True"
OnSorting="GridView1_Sorting" AutoGenerateColumns="False"
DataKeyNames="CategoryID" DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="CategoryID" HeaderText="CategoryID"
InsertVisible="False" ReadOnly="True" SortExpression="CategoryID" />
<asp:BoundField DataField="CategoryName" HeaderText="CategoryName"
SortExpression="CategoryName" />
<asp:BoundField DataField="Description" HeaderText="Description"
SortExpression="Description" />
</Columns>
</asp:GridView>


با تشکر

بابا واضحه دییییییییییییگه ؟!
Error خودش داره داد می زنه :
Both DataSource and DataSourceID are defined on 'GridView1'. Remove one definition.