title: No Overload for method which takes 4 arguments
body: <p>I am trying to update gridview. Here, I have used 3 tier architecture method.</p>
  
  <p>Here is my GridView. </p>
  
  <pre><code>&lt;asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="4" DataKeyNames="ResllerID"
            ForeColor="#333333" GridLines="None" OnRowDeleting="DeleteRecord" EmptyDataText="There are no data records to display." 
          AllowPaging="True" AllowSorting="True" onrowediting="GridView1_RowEditing" onrowupdating="GridView1_RowUpdating"
          AutoGenerateDeleteButton="True" AutoGenerateEditButton="True" &gt;
          &lt;AlternatingRowStyle BackColor="White" /&gt;
          &lt;Columns&gt;
                  &lt;asp:TemplateField HeaderText="Reseller Name" SortExpression="ResellerName"&gt;  
                      &lt;EditItemTemplate&gt;  
                          &lt;asp:TextBox ID="ResellerTextBox" runat="server" Text='&lt;%# Bind("ResellerName") %&gt;'&gt;&lt;/asp:TextBox&gt;  
                      &lt;/EditItemTemplate&gt;  
                      &lt;ItemTemplate&gt;  
                  &lt;asp:Label ID="Label1" runat="server" Text='&lt;%# Bind("ResellerName") %&gt;'&gt;&lt;/asp:Label&gt;  
                      &lt;/ItemTemplate&gt;  
                  &lt;/asp:TemplateField&gt;
                  &lt;asp:TemplateField HeaderText="Mobile Number" SortExpression="MobileNumber"&gt;  
                      &lt;EditItemTemplate&gt;  
                          &lt;asp:TextBox ID="MobileTextBox" runat="server" Text='&lt;%# Bind("MobileNumber") %&gt;'&gt;&lt;/asp:TextBox&gt;  
                      &lt;/EditItemTemplate&gt;  
                      &lt;ItemTemplate&gt;  
                  &lt;asp:Label ID="Label2" runat="server" Text='&lt;%# Bind("MobileNumber") %&gt;'&gt;&lt;/asp:Label&gt;
                    &lt;/ItemTemplate&gt;  
                   &lt;/asp:TemplateField&gt;
  
                    &lt;asp:TemplateField HeaderText="Reference Number" SortExpression="ReferenceNumber"&gt;  
                      &lt;EditItemTemplate&gt;  
                          &lt;asp:TextBox ID="ReferenceTextBox" runat="server" Text='&lt;%# Bind("ReferenceNumber") %&gt;'&gt;&lt;/asp:TextBox&gt;  
                      &lt;/EditItemTemplate&gt;  
                      &lt;ItemTemplate&gt;  
                  &lt;asp:Label ID="Label3" runat="server" Text='&lt;%# Bind("ReferenceNumber") %&gt;'&gt;&lt;/asp:Label&gt;
                      &lt;/ItemTemplate&gt;  
                  &lt;/asp:TemplateField&gt;
  
          &lt;/Columns&gt;
          &lt;FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /&gt;
          &lt;HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /&gt;
          &lt;PagerStyle BackColor="#FFCC66" ForeColor="#333333" HorizontalAlign="Center" /&gt;
          &lt;RowStyle BackColor="#FFFBD6" ForeColor="#333333" /&gt;
          &lt;SelectedRowStyle BackColor="#FFCC66" Font-Bold="True" ForeColor="Navy" /&gt;
          &lt;SortedAscendingCellStyle BackColor="#FDF5AC" /&gt;
          &lt;SortedAscendingHeaderStyle BackColor="#4D0000" /&gt;
          &lt;SortedDescendingCellStyle BackColor="#FCF6C0" /&gt;
          &lt;SortedDescendingHeaderStyle BackColor="#820000" /&gt;
      &lt;/asp:GridView&gt;
  </code></pre>
  
  <p>Here is my code: I am getting error ResellerBL.UpdateReseller(resellerId, name.Text, mobileNumber.Text, referenceNumber.Text); It says No Overload for method which takes 4 arguments</p>
  
  <pre><code>protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
      {
          GridView1.EditIndex = e.NewEditIndex;
          GridView1.DataSource = ResellerBL.GetResellers();
          GridView1.DataBind();
      }
  
      protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
      {
          int resellerId = Convert.ToInt32(GridView1.DataKeys[e.RowIndex].Value);
          TextBox name = (TextBox)GridView1.Rows[e.RowIndex].Cells[2].Controls[0];
          TextBox mobileNumber = (TextBox)GridView1.Rows[e.RowIndex].Cells[3].Controls[0];
          TextBox referenceNumber = (TextBox)GridView1.Rows[e.RowIndex].Cells[4].Controls[0];
  
          ResellerBL.UpdateReseller(resellerId, name.Text, mobileNumber.Text, referenceNumber.Text);
  
          GridView1.EditIndex = -1;
          GridView1.DataSource = ResellerBL.GetResellers();
          GridView1.DataBind();
      }
  </code></pre>
  
  <p>ResellerBL code:</p>
  
  <pre><code>public static void UpdateReseller(Reseller reseller)
      {
          string query = "UPDATE [Resellers] SET [ResellerName] = @ResellerName, [ReferenceNumber] = @ReferenceNumber WHERE [ResellerID] = @ResellerID";
          SqlCommand cmd = new SqlCommand(query);
  
          cmd.Parameters.AddWithValue("@ResellerName", SqlDbType.Text).Value = reseller.ResellerName;
          cmd.Parameters.AddWithValue("@MobileNumber", SqlDbType.Text).Value = reseller.MobileNumber;
          cmd.Parameters.AddWithValue("@ReferenceNumber", SqlDbType.Text).Value = reseller.ReferenceNumber;
  
          cmd.Parameters.AddWithValue("@ResllerID", SqlDbType.Text).Value = reseller.ResllerID;
  
          DbUtility.UpdateDb(cmd);
      }
  </code></pre>