c# - Deleting Images in a GridView Control -


i'm designing gridview control allow editing , deleting of rows contain images. whenever try use auto-generated delete method following error: "operand type clash: varbinary(max) incompatible sql_variant"

here's code:

<div id="content">         <asp:sqldatasource id="sqldatasource1" runat="server" conflictdetection="compareallvalues"             connectionstring="<%$ connectionstrings:inventoryconnectionstring %>" deletecommand="delete [inventory] [id] = @original_id , [stocknum] = @original_stocknum , [make] = @original_make , [model] = @original_model , [year] = @original_year , (([miles] = @original_miles) or ([miles] null , @original_miles null)) , (([engine] = @original_engine) or ([engine] null , @original_engine null)) , (([drive] = @original_drive) or ([drive] null , @original_drive null)) , (([color] = @original_color) or ([color] null , @original_color null)) , (([description] = @original_description) or ([description] null , @original_description null)) , (([image1] = @original_image1) or ([image1] null , @original_image1 null)) , (([image2] = @original_image2) or ([image2] null , @original_image2 null)) , (([image3] = @original_image3) or ([image3] null , @original_image3 null)) , (([image4] = @original_image4) or ([image4] null , @original_image4 null)) , (([image5] = @original_image5) or ([image5] null , @original_image5 null)) , (([added] = @original_added) or ([added] null , @original_added null))"             insertcommand="insert [inventory] ([stocknum], [make], [model], [year], [miles], [engine], [drive], [color], [description], [image1], [image2], [image3], [image4], [image5], [added]) values (@stocknum, @make, @model, @year, @miles, @engine, @drive, @color, @description, @image1, @image2, @image3, @image4, @image5, @added)"             oldvaluesparameterformatstring="original_{0}" selectcommand="select * [inventory]"              updatecommand="update [inventory] set [stocknum] = @stocknum, [make] = @make, [model] = @model, [year] = @year, [miles] = @miles, [engine] = @engine, [drive] = @drive, [color] = @color, [description] = @description, [image1] = @image1, [image2] = @image2, [image3] = @image3, [image4] = @image4, [image5] = @image5, [added] = @added [id] = @original_id , [stocknum] = @original_stocknum , [make] = @original_make , [model] = @original_model , [year] = @original_year , (([miles] = @original_miles) or ([miles] null , @original_miles null)) , (([engine] = @original_engine) or ([engine] null , @original_engine null)) , (([drive] = @original_drive) or ([drive] null , @original_drive null)) , (([color] = @original_color) or ([color] null , @original_color null)) , (([description] = @original_description) or ([description] null , @original_description null)) , (([image1] = @original_image1) or ([image1] null , @original_image1 null)) , (([image2] = @original_image2) or ([image2] null , @original_image2 null)) , (([image3] = @original_image3) or ([image3] null , @original_image3 null)) , (([image4] = @original_image4) or ([image4] null , @original_image4 null)) , (([image5] = @original_image5) or ([image5] null , @original_image5 null)) , (([added] = @original_added) or ([added] null , @original_added null))">             <deleteparameters>                 <asp:parameter name="original_id" type="int32" />                 <asp:parameter name="original_stocknum" type="string" />                 <asp:parameter name="original_make" type="string" />                 <asp:parameter name="original_model" type="string" />                 <asp:parameter name="original_year" type="int32" />                 <asp:parameter name="original_miles" type="int32" />                 <asp:parameter name="original_engine" type="string" />                 <asp:parameter name="original_drive" type="string" />                 <asp:parameter name="original_color" type="string" />                 <asp:parameter name="original_description" type="string" />                 <asp:parameter name="original_image1" type="object" />                 <asp:parameter name="original_image2" type="object" />                 <asp:parameter name="original_image3" type="object" />                 <asp:parameter name="original_image4" type="object" />                 <asp:parameter name="original_image5" type="object" />                 <asp:parameter dbtype="date" name="original_added" />             </deleteparameters>             <insertparameters>                 <asp:parameter name="stocknum" type="string" />                 <asp:parameter name="make" type="string" />                 <asp:parameter name="model" type="string" />                 <asp:parameter name="year" type="int32" />                 <asp:parameter name="miles" type="int32" />                 <asp:parameter name="engine" type="string" />                 <asp:parameter name="drive" type="string" />                 <asp:parameter name="color" type="string" />                 <asp:parameter name="description" type="string" />                 <asp:parameter name="image1" type="object" />                 <asp:parameter name="image2" type="object" />                 <asp:parameter name="image3" type="object" />                 <asp:parameter name="image4" type="object" />                 <asp:parameter name="image5" type="object" />                 <asp:parameter dbtype="date" name="added" />             </insertparameters>             <updateparameters>                 <asp:parameter name="stocknum" type="string" />                 <asp:parameter name="make" type="string" />                 <asp:parameter name="model" type="string" />                 <asp:parameter name="year" type="int32" />                 <asp:parameter name="miles" type="int32" />                 <asp:parameter name="engine" type="string" />                 <asp:parameter name="drive" type="string" />                 <asp:parameter name="color" type="string" />                 <asp:parameter name="description" type="string" />                 <asp:parameter name="image1" type="object" />                 <asp:parameter name="image2" type="object" />                 <asp:parameter name="image3" type="object" />                 <asp:parameter name="image4" type="object" />                 <asp:parameter name="image5" type="object" />                 <asp:parameter name="added" dbtype="date"></asp:parameter>                 <asp:parameter name="original_id" type="int32" />                 <asp:parameter name="original_stocknum" type="string" />                 <asp:parameter name="original_make" type="string" />                 <asp:parameter name="original_model" type="string" />                 <asp:parameter name="original_year" type="int32" />                 <asp:parameter name="original_miles" type="int32" />                 <asp:parameter name="original_engine" type="string" />                 <asp:parameter name="original_drive" type="string" />                 <asp:parameter name="original_color" type="string" />                 <asp:parameter name="original_description" type="string" />                 <asp:parameter name="original_image1" type="object" />                 <asp:parameter name="original_image2" type="object" />                 <asp:parameter name="original_image3" type="object" />                 <asp:parameter name="original_image4" type="object" />                 <asp:parameter name="original_image5" type="object" />                 <asp:parameter dbtype="date" name="original_added" />             </updateparameters>         </asp:sqldatasource>         <asp:gridview id="gridview1" runat="server" allowpaging="true" allowsorting="true"             autogeneratecolumns="false" datakeynames="id"              datasourceid="sqldatasource1" cssclass="gridviewstyle">             <columns>                 <asp:commandfield showdeletebutton="true" showselectbutton="true"                     headertext="options" />                 <asp:boundfield datafield="stocknum" headertext="stock #" sortexpression="stocknum" />                 <asp:boundfield datafield="make" headertext="make" sortexpression="make" />                 <asp:boundfield datafield="model" headertext="model" sortexpression="model" />                 <asp:boundfield datafield="year" headertext="year" sortexpression="year" />                 <asp:boundfield datafield="miles" headertext="miles" sortexpression="miles" />                 <asp:boundfield datafield="engine" headertext="engine" sortexpression="engine" />                 <asp:boundfield datafield="drive" headertext="drive" sortexpression="drive" />                 <asp:boundfield datafield="color" headertext="color" sortexpression="color" />                 <asp:boundfield datafield="description" headertext="description" sortexpression="description" />                 <asp:imagefield dataimageurlfield="id" dataimageurlformatstring="imagehandler.aspx?imageid={0}"                     controlstyle-width="200" controlstyle-height="120" headertext="preview image">                     <controlstyle height="120px" width="200px"></controlstyle>                 </asp:imagefield>             </columns>             <rowstyle cssclass="rowstyle" />             <emptydatarowstyle cssclass="emptyrowstyle" />             <pagerstyle cssclass="pagerstyle" />             <selectedrowstyle cssclass="selectedrowstyle" />             <headerstyle cssclass="headerstyle" />             <editrowstyle cssclass="editrowstyle" />             <alternatingrowstyle cssclass="altrowstyle" />         </asp:gridview>     </div> 

code-behind:

using system; using system.configuration; using system.data; using system.data.sql; using system.data.sqlclient; using system.web; using system.web.security; using system.web.ui; using system.web.ui.htmlcontrols; using system.web.ui.webcontrols; using system.web.ui.webcontrols.webparts;  public partial class account_editinventory : system.web.ui.page {     protected void page_load(object sender, eventargs e)     {         datatable dt = new datatable();         string strconnstring = system.configuration.configurationmanager.             connectionstrings["inventoryconnectionstring"].connectionstring;         string strquery = "select id, image1 inventory";         sqlcommand cmd = new sqlcommand(strquery);         sqlconnection con = new sqlconnection(strconnstring);         sqldataadapter sda = new sqldataadapter();         cmd.commandtype = commandtype.text;         cmd.connection = con;         try         {             con.open();             sda.selectcommand = cmd;             sda.fill(dt);             gridview1.databind();          }         catch (exception ex)         {             response.write(ex.message);         }                 {             con.close();             sda.dispose();             con.dispose();             dt.dispose();         }     } } 

you need not try pass image in parameter in delete query , rewrite pass key them image.


Comments

Popular posts from this blog

php - What is the difference between $_SERVER['PATH_INFO'] and $_SERVER['ORIG_PATH_INFO']? -

fortran - Function return type mismatch -

queue - mq_receive: message too long -