c# - System.Data.DataRowView' does not contain a property with the name 'State' -


<asp:gridview id="dgvcustomers" runat="server" autogeneratecolumns="false" horizontalalign="center" datakeynames="id" datasourceid="dscustomertickets" backcolor="white" bordercolor="#dedfde" borderstyle="none" borderwidth="1px" cellpadding="4" forecolor="black" gridlines="vertical" onrowupdated="dgvcustomers_rowupdated">             <alternatingrowstyle backcolor="white" />             <columns>                 <asp:commandfield editimageurl="~/svg/edit.png" updateimageurl="~/svg/save.png" cancelimageurl="~/svg/cancel.png" buttontype="image" showeditbutton="true" />                 <asp:boundfield datafield="id" headertext="id" insertvisible="false" readonly="true" sortexpression="id" />                 <asp:boundfield datafield="title" headertext="title" sortexpression="title" />                 <asp:boundfield datafield="description" headertext="description" sortexpression="description" />                 <asp:boundfield datafield="system" headertext="system" sortexpression="system" />                 <asp:boundfield datafield="loggeddate" headertext="loggeddate" sortexpression="loggeddate" />                 <asp:boundfield datafield="closeddate" headertext="closeddate" sortexpression="closeddate" />                 <asp:boundfield datafield="resolution" headertext="resolution" sortexpression="resolution" />                 <%--<asp:boundfield datafield="historyid" headertext="historyid" sortexpression="historyid" />--%>                 <%--<asp:boundfield datafield="priority" headertext="priority" sortexpression="priority" />--%>                 <asp:boundfield datafield="loggedby" headertext="loggedby" sortexpression="loggedby" />                 <asp:templatefield headertext="state" sortexpression="state2">                     <edititemtemplate>                         <asp:dropdownlist id="ddlstate" runat="server" datasourceid="sqldatasource2" datatextfield="state" datavaluefield="id" selectedvalue='<%# bind("state") %>' appenddatabounditems="true">                             <asp:listitem text="select state" value="" />                         </asp:dropdownlist>                     </edititemtemplate>                     <itemtemplate>                         <asp:label id="label1" runat="server" text='<%# bind("state2") %>'></asp:label>                     </itemtemplate>                 </asp:templatefield>                 <asp:templatefield headertext="priority" sortexpression="state3">                     <edititemtemplate>                         <asp:dropdownlist id="ddlpriority" runat="server" datasourceid="sqldatasource3" datatextfield="priority" datavaluefield="id" selectedvalue='<%# bind("priority") %>' appenddatabounditems="true">                             <asp:listitem text="select priority" value="" />                         </asp:dropdownlist>                     </edititemtemplate>                     <itemtemplate>                         <asp:label id="label2" runat="server" text='<%# bind("state3") %>'></asp:label>                     </itemtemplate>                 </asp:templatefield>             </columns>             <footerstyle backcolor="#cccc99" />             <headerstyle backcolor="#6b696b" font-bold="true" forecolor="white" />             <pagerstyle backcolor="#f7f7de" forecolor="black" horizontalalign="right" />             <rowstyle backcolor="#f7f7de" />             <selectedrowstyle backcolor="#0099ff" font-bold="true" forecolor="white" />             <sortedascendingcellstyle backcolor="#fbfbf2" />             <sortedascendingheaderstyle backcolor="#848384" />             <sorteddescendingcellstyle backcolor="#eaead3" />             <sorteddescendingheaderstyle backcolor="#575357" />         </asp:gridview>         <asp:sqldatasource id="dscustomertickets" runat="server" connectionstring="<%$ connectionstrings:ticketssupportconnectionstring %>" deletecommand="delete [tickets] [id] = @id" insertcommand="insert [tickets] ([title], [description], [system], [loggeddate], [closeddate], [resolution], [priority], [historyid], [loggedby], [state]) values (@title, @description, @system, @loggeddate, @closeddate, @resolution, @priority, @historyid, @loggedby, @state)" selectcommand="select t.id, t.title, t.description, t.system, t.attachments, t.loggeddate, t.closeddate, t.resolution, t.priority, t.loggedby, s.state state2, p.priority state3 tickets t inner join state s on t.state = s.id inner join priority p on t.priority = p.id (t.loggedby = @loggedby)" updatecommand="update tickets set description = @description, system = @system, closeddate = @closeddate, resolution = @resolution, priority = @priority, historyid = @historyid, state = @state (id = @id)">             <deleteparameters>                 <asp:parameter name="id" type="int32" />             </deleteparameters>             <insertparameters>                 <asp:parameter name="title" type="string" />                 <asp:parameter name="description" type="string" />                 <asp:parameter name="system" type="string" />                 <asp:parameter name="loggeddate" type="datetime" />                 <asp:parameter name="closeddate" type="datetime" />                 <asp:parameter name="resolution" type="string" />                 <asp:parameter name="priority" type="int32" />                 <asp:parameter name="historyid" type="int32" />                 <asp:parameter name="loggedby" type="string" />                 <asp:parameter name="state" type="int32" />             </insertparameters>             <selectparameters>                 <asp:querystringparameter name="loggedby" querystringfield="u" />             </selectparameters>             <updateparameters>                 <asp:parameter name="description" type="string" />                 <asp:parameter name="system" type="string" />                 <asp:parameter name="closeddate" type="datetime" />                 <asp:parameter name="resolution" type="string" />                 <asp:parameter name="priority" type="int32" />                 <asp:parameter name="historyid" type="int32" />                 <asp:parameter name="state" type="int32" />                 <asp:parameter name="id" type="int32" />             </updateparameters>         </asp:sqldatasource>         <asp:sqldatasource id="sqldatasource2" runat="server" connectionstring="<%$ connectionstrings:ticketssupportconnectionstring %>" selectcommand="select [id],[state] [dbo].[state]"></asp:sqldatasource> 

with above code error constantly. in sql if run sqldatasource2 query results (id , state). sql results

i tried changing queries , editing dragged sqldatasource2 in query builder. click on commandfield "editimageurl" above error. maybe looking @ code long notice issues.

i have googled no luck looking @ stuff like: have looked @ here , same here, have bind instead of eval in dropdown list.

i tried changing sqldatasource to:

  1. select * state
  2. select id, state state
  3. select id, state dbo.state

any appreciated.

edit , update

in edittemplate fill in aspdropdown sqldatasource2 correct datatextfield="state" datavaluefield="id". selectedvalue belongs <asp:sqldatasource id="dscustomertickets". need t.state in selectcommand make binding selectedvalue='<%# bind("state") %>' correct. there no need in bind in itemtemplate. eval("state2") enough.
, 1st sqldatasource should be

    <asp:sqldatasource id="dscustomertickets" runat="server"          connectionstring="<%$ connectionstrings:ticketssupportconnectionstring %>"          deletecommand="delete [tickets] [id] = @id"          insertcommand="insert [tickets] (/*removed shortness*/ [state]) values ( @state2)"          selectcommand="select /*your list*/ t.state, s.state state2, p.priority state3 tickets t inner join state s on t.state = s.id inner join priority p on t.priority = p.id (t.loggedby = @loggedby)"          updatecommand="update tickets set /*removed shortness*/ state = @state2 (id = @id)">         <deleteparameters>             <asp:parameter name="id" type="int32" />         </deleteparameters>         <insertparameters>             <%--your parameters removed shortness--%>             <asp:parameter name="state" type="int32" />         </insertparameters>         <selectparameters>             <asp:querystringparameter name="loggedby" querystringfield="u" />         </selectparameters>         <updateparameters>             <%--your parameters removed shortness--%>             <asp:parameter name="state" type="int32" />             <asp:parameter name="id" type="int32" />         </updateparameters>     </asp:sqldatasource> 

Comments