problem solved, add in to the gridview, where
The code is underlined
<asp:removed id="GridView1" runat="server" autogeneratecolumns="False" xmlns:asp="#unknown">DataKeyNames="productid" onDeleteCommand="GridView1_onDeleteCommand"
DataSourceID="SqlDataSource1"></asp:removed>
The delete command gives this error because it could not find the variable '@productid' that it could pass to its DELETE query.
So , when the command DataKeyNames="productid" is inserted, it will allow the delete command to work.