0

Whenever I try to update or insert a new row into this table I get the object reference error. I am not sure what is causing it, as I have a bunch of other grids that are coded in the same way that function without error. Below is my update and insert methods, as well as the html. Any help is greatly appreciated.

enter code here
    Protected Sub CatNutritionTypes_RowCommand(ByVal sender As Object, ByVal e As 
 GridViewCommandEventArgs)
    'Try

    If e.CommandName.Equals("AddNew") Then

            Using sqlCon As SqlConnection = New SqlConnection(Azure_Connection_String)
                sqlCon.Open()
                Dim query As String = "INSERT INTO Norm.CAT_Nutrition_Types (Genesis_NutrientKey, 
Nutritional_Desc, AbbreviatedName, CAT_UOMID, IsViewable, IsDailyValue, IsCalculated, IsUserCreated, 
CAT_Nutrient_Group, Genesis_API_GUID,  EnteredDateTime, UserID, IsDeleted, OrderBy, Percent_Diff) 
VALUES (@Genesis_NutrientKey, @Nutritional_Desc, @AbbreviatedName, @CAT_UOMID, @IsViewable, 
@IsDailyValue, @IsCalculated, @IsUserCreated, @CAT_Nutrient_Group, @Genesis_API_GUID,  
@EnteredDateTime, @UserID, @IsDeleted, @OrderBy, @Percent_Diff)"
                Dim sqlCmd As SqlCommand = New SqlCommand(query, sqlCon)
                Dim dtbl As DataTable = New DataTable()
                sqlCmd.Parameters.AddWithValue("@Genesis_NutrientKey", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtGenesisNutrientKeyFooter"), 
TextBox)).Text.Trim())
                sqlCmd.Parameters.AddWithValue("@Nutritional_Desc", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtNutritionalDescFooter"), TextBox)).Text.Trim())
                sqlCmd.Parameters.AddWithValue("@AbbreviatedName", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtAbbreviatedNameFooter"), TextBox)).Text.Trim())
                sqlCmd.Parameters.AddWithValue("@CAT_UOMID", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtCatUomIdFooter"), TextBox)).Text.Trim())
                sqlCmd.Parameters.AddWithValue("@IsViewable", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtIsViewableFooter"), CheckBox)).Text.Trim())
                sqlCmd.Parameters.AddWithValue("@IsDailyValue", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtIsDailyValueFooter"), CheckBox)).Text.Trim())
                sqlCmd.Parameters.AddWithValue("@IsCalculated", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtIsCalculatedFooter"), CheckBox)).Text.Trim())
                sqlCmd.Parameters.AddWithValue("@IsUserCreated", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtIsUserCreatedFooter"), CheckBox)).Text.Trim())
                sqlCmd.Parameters.AddWithValue("@CAT_Nutrient_Group_ID", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtCatNutrientGroupIdFooter"), 
 TextBox)).Text.Trim())
                sqlCmd.Parameters.AddWithValue("@Genesis_API_GUID", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtGenesisApiGuidFooter"), TextBox)).Text.Trim())
                sqlCmd.Parameters.AddWithValue("@EnteredDateTime", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtEnteredDateTimeFooter"), TextBox)).Text.Trim())
                sqlCmd.Parameters.AddWithValue("@UserID", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtUserIdFooter"), TextBox)).Text.Trim())
                sqlCmd.Parameters.AddWithValue("@IsDeleted", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtIsDeletedFooter"), CheckBox)).Text.Trim())
                sqlCmd.Parameters.AddWithValue("@DeletedDateTime", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtDeletedDateTimeFooter"), TextBox)).Text.Trim())
                sqlCmd.Parameters.AddWithValue("@IsRequired", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtIsRequiredFooter"), CheckBox)).Text.Trim())
                sqlCmd.Parameters.AddWithValue("@OrderBy", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtOrderByFooter"), TextBox)).Text.Trim())
                sqlCmd.Parameters.AddWithValue("@Percent_Diff", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtPercentDiffFooter"), TextBox)).Text.Trim())
                sqlCmd.Parameters.AddWithValue("@IsUPD_Required", 
(TryCast(CatNutritionTypes.FooterRow.FindControl("txtIsUpdRequired"), TextBox)).Text.Trim())
                sqlCmd.ExecuteNonQuery()
                PopulateGridview()
                lblSuccessMessage.Text = "New Record Added"
                lblErrorMessage.Text = ""

            End Using
        End If

    'Catch ex As Exception
    'lblSuccessMessage.Text = ""
    ' lblErrorMessage.Text = ex.Message
    ' End Try
End Sub

Protected Sub CatNutritionTypes_RowUpdating(ByVal sender As Object, ByVal e As 
GridViewUpdateEventArgs)
    'Try

    Using sqlCon As SqlConnection = New SqlConnection(Azure_Connection_String)
            sqlCon.Open()
            Dim query As String = "UPDATE Norm.CAT_Nutrition_Types SET 
Genesis_NutrientKey=@Genesis_NutrientKey, CAT_UOMID=@CAT_UOMID, IsViewable=@IsViewable, 
IsDailyValue=@IsDailyValue, IsCalculated=@IsCalculated, IsUserCreated=@IsUserCreated, 
CAT_Nutrient_Group_ID=@CAT_Nutrient_Group_ID, Genesis_API_GUID=@Genesis_API_GUID, 
EnteredDateTime=@EnteredDateTime, UserID=@UserID, IsDeleted=@IsDeleted, OrderBy=@OrderBy, 
Percent_Diff=@Percent_Diff  WHERE CAT_Nutrition_TypesID = @id"
            Dim sqlCmd As SqlCommand = New SqlCommand(query, sqlCon)
            sqlCmd.Parameters.AddWithValue("@Genesis_NutrientKey", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtGenesisNutrientKey"), 
TextBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@Nutritional_Desc", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtNutritionalDesc"), TextBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@AbbreviatedName", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtAbbreviatedName"), TextBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@CAT_UOMID", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtCatUomId"), TextBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@IsViewable", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtIsViewable"), CheckBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@IsDailyValue", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtIsDailyValue"), CheckBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@IsCalculated", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtIsCalculated"), CheckBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@IsUserCreated", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtIsUserCreated"), CheckBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@CAT_Nutrient_Group_ID", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtCatNutrientGroupId"), 
TextBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@Genesis_API_GUID", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtGenesisApiGuid"), TextBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@EnteredDateTime", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtEnteredDateTime"), TextBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@UserID", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtUserId"), TextBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@IsDeleted", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtIsDeleted"), CheckBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@DeletedDateTime", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtDeletedDateTime"), TextBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@IsRequired", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtIsRequired"), CheckBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@OrderBy", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtOrderBy"), TextBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@Percent_Diff", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtPercentDiff"), TextBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@IsUPD_Required", 
(TryCast(CatNutritionTypes.Rows(e.RowIndex).FindControl("txtIsUpdRequired"), TextBox)).Text.Trim())
            sqlCmd.Parameters.AddWithValue("@id", 
Convert.ToInt32(CatNutritionTypes.DataKeys(e.RowIndex).Value.ToString()))
            sqlCmd.ExecuteNonQuery()
            CatNutritionTypes.EditIndex = -1
            PopulateGridview()
            lblSuccessMessage.Text = "Selected Record Updated"
            lblErrorMessage.Text = ""
        End Using

    ' Catch ex As Exception
    'lblSuccessMessage.Text = ""
    'lblErrorMessage.Text = ex.Message
    '  End Try
End Sub



enter code here
<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="CatNutritionTypes.aspx.vb" 
Inherits="Cat_Tables4.CatNutritionTypes" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script type="text/javascript" 
src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript" src="scripts/jquery.blockUI.js"></script>
</head>
<body>
<div>
<form runat="server">
<asp:GridView ID="CatNutritionTypes" runat="server" Autogeneratecolumns="false" ShowFooter="true" 
DataKeyNames="CAT_Nutrition_TypesID"
    ShowHeaderWhenEmpty="true" 
    OnRowCommand= "CatNutritionTypes_RowCommand" OnRowEditing= "CatNutritionTypes_RowEditing" 
OnRowCancelingEdit= "CatNutritionTypes_RowCancelingEdit"
            OnRowUpdating= "CatNutritionTypes_RowUpdating" OnRowDeleting= 
"CatNutritionTypes_RowDeleting"
    BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" CellPadding="3">
    <FooterStyle BackColor="White" ForeColor="#000066" />
    <HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />
    <PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />
    <RowStyle ForeColor="#000066" />
    <SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />
    <SortedAscendingCellStyle BackColor="#F1F1F1" />
    <SortedAscendingHeaderStyle BackColor="#007DBB" />
    <SortedDescendingCellStyle BackColor="#CAC9C9" />
    <SortedDescendingHeaderStyle BackColor="#00547E" /> 
    <Columns>
        <asp:TemplateField HeaderText="Genesis_NutrientKey">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("Genesis_NutrientKey") %>' runat="server" />
            </ItemTemplate>
            <EditItemTemplate>
   <asp:Textbox ID="txtGenesisNutrientKey" Text='<%# Eval("Genesis_NutrientKey") %>' runat="server"/>
            </EditItemTemplate>
            <FooterTemplate>
                <asp:Textbox ID ="txtGenesisNutrientKeyFooter" runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Nutritional_Desc">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("Nutritional_Desc") %>' runat="server" />
            </ItemTemplate>
            <EditItemTemplate>
        <asp:Textbox ID="txtNutritionalDesc" Text='<%# Eval("Nutritional_Desc") %>' runat="server" />
            </EditItemTemplate>
            <FooterTemplate>
                <asp:Textbox ID ="txtNutritionalDescFooter" runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="AbbreviatedName">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("AbbreviatedName") %>' runat="server" />
            </ItemTemplate>
            <EditItemTemplate>
         <asp:Textbox ID="txtAbbreviatedName" Text='<%# Eval("AbbreviatedName") %>' runat="server" />
            </EditItemTemplate>
            <FooterTemplate>
                <asp:Textbox ID ="txtAbbreviatedNameFooter" runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
         <asp:TemplateField HeaderText="Default_CAT_UOMID">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("CAT_UOMID") %>' runat="server" />
            </ItemTemplate>
            <EditItemTemplate>
                <asp:Textbox ID="txtCatUomId" Text='<%# Eval("CAT_UOMID") %>' runat="server" />
            </EditItemTemplate>
            <FooterTemplate>
                <asp:Textbox ID ="txtCatUomIdFooter" runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
         <asp:TemplateField HeaderText="IsViewable">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("IsViewable") %>' runat="server" />
            </ItemTemplate>
            <EditItemTemplate>
                <asp:Textbox ID="txtIsViewable" Text='<%# Eval("IsViewable") %>' runat="server" />
            </EditItemTemplate>
            <FooterTemplate>
                <asp:Checkbox ID ="txtIsViewableFooter" runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
         <asp:TemplateField HeaderText="IsDailyValue">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("IsDailyValue") %>' runat="server" />
            </ItemTemplate>
            <EditItemTemplate>
             <asp:Checkbox ID="txtIsDailyValue" Text='<%# Eval("IsDailyValue") %>' runat="server" />
            </EditItemTemplate>
            <FooterTemplate>
                <asp:Checkbox ID ="txtIsDailyValueFooter" runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
         <asp:TemplateField HeaderText="IsCalculated">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("IsCalculated") %>' runat="server" />
            </ItemTemplate>
            <EditItemTemplate>
              <asp:Checkbox ID="txtIsCalculated" Text='<%# Eval("IsCalculated") %>' runat="server" />
            </EditItemTemplate>
            <FooterTemplate>
                <asp:Checkbox ID ="txtIsCalculatedFooter" runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
         <asp:TemplateField HeaderText="IsUserCreated">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("IsUserCreated") %>' runat="server" />
            </ItemTemplate>
            <EditItemTemplate>
        <asp:Checkbox ID="txtIsUserCreated" Text='<%# Eval("IsUserCreated") %>' runat="server" />
            </EditItemTemplate>
            <FooterTemplate>
                <asp:Checkbox ID ="txtIsUserCreatedFooter" runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
         <asp:TemplateField HeaderText="CAT_Nutrient_Group_ID">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("CAT_Nutrient_Group_ID") %>' runat="server" />
            </ItemTemplate>
            <EditItemTemplate>
      <asp:Textbox ID="txtCatNutrientGroupId" Text='<%# Eval("CAT_Nutrient_Group_ID") %>' 
  runat="server" />
            </EditItemTemplate>
            <FooterTemplate>
                <asp:Textbox ID ="txtCatNutrientGroupIdFooter" runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Genesis_API_GUID">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("Genesis_API_GUID") %>' runat="server" />
            </ItemTemplate>
            <EditItemTemplate>
          <asp:Textbox ID="txtGenesisApiGuid" Text='<%# Eval("Genesis_API_GUID") %>' runat="server"/>
            </EditItemTemplate>
            <FooterTemplate>
                <asp:TextBox ID ="txtGenesisApiGuidFooter" runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
          <asp:TemplateField HeaderText="EnteredDateTime">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("EnteredDateTime", "{0:dd/ MM yyyy}") %>' readonly="true" 
  runat="server" />
            </ItemTemplate>
            <EditItemTemplate>
        <asp:Textbox ID="txtEnteredDateTime" Text='<%# Eval("EnteredDateTime", "{0:dd/ MM yyyy}") %>' 
  runat="server" ReadOnly="true" />
            </EditItemTemplate>
            <FooterTemplate>
                <asp:Textbox ID ="txtEnteredDateTimeFooter" ReadOnly="true" runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
          <asp:TemplateField HeaderText="UserID">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("UserID") %>' runat="server" />
            </ItemTemplate>
            <EditItemTemplate>
                <asp:Textbox ID="txtUserId" Text='<%# Eval("UserID") %>' runat="server" />
            </EditItemTemplate>
            <FooterTemplate>
                <asp:Textbox ID ="txtUserIDFooter" runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
          <asp:TemplateField HeaderText="IsDeleted">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("IsDeleted") %>' runat="server" />
            </ItemTemplate>
            <EditItemTemplate>
                <asp:CheckBox ID="txtIsDeleted" Text='<%# Eval("IsDeleted") %>' runat="server" />
            </EditItemTemplate>
            <FooterTemplate>
                <asp:CheckBox ID ="txtIsDeletedFooter" runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
             <asp:TemplateField HeaderText="DeletedDateTime">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("DeletedDateTime", "{0:dd/ MM yyyy}") %>' runat="server" 
  readonly="false" />
            </ItemTemplate>
            <EditItemTemplate>
        <asp:Textbox ID="txtDeletedDateTime" Text='<%# Eval("DeletedDateTime", "{0:dd/ MM yyyy}") %>' 
  runat="server" readonly="false" />
            </EditItemTemplate>
            <FooterTemplate>
                <asp:Textbox ID ="txtDeletedDateTimeFooter" readonly="false" runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
             <asp:TemplateField HeaderText="IsRequired">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("IsRequired") %>' runat="server" />
            </ItemTemplate>
            <EditItemTemplate>
                <asp:Checkbox ID="txtIsRequired" Text='<%# Eval("IsRequired") %>' runat="server"/>
            </EditItemTemplate>
            <FooterTemplate>
                <asp:Checkbox ID ="txtIsRequired" runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
             <asp:TemplateField HeaderText="OrderBy">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("OrderBy") %>' runat="server" />
            </ItemTemplate>
            <EditItemTemplate>
                <asp:Textbox ID="txtOrderBy" Text='<%# Eval("OrderBy") %>' runat="server" />
            </EditItemTemplate>
            <FooterTemplate>
                <asp:Textbox ID ="txtOrderByFooter"  runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
             <asp:TemplateField HeaderText="Percent_Diff">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("Percent_Diff") %>' runat="server" />
            </ItemTemplate>
            <EditItemTemplate>
                <asp:Textbox ID="txtPercentDiff" Text='<%# Eval("Percent_Diff") %>' runat="server" />
            </EditItemTemplate>
            <FooterTemplate>
                <asp:Textbox ID ="txtPercentDiffFooter"  runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="IsUPD_Required">
            <ItemTemplate>
                <asp:Label Text='<%# Eval("IsUPD_Required") %>' runat="server" />
            </ItemTemplate>
            <EditItemTemplate>
          <asp:Textbox ID="txtIsUpdRequired" Text='<%# Eval("IsUPD_Required") %>' runat="server" />
            </EditItemTemplate>
            <FooterTemplate>
                <asp:Textbox ID ="txtIsUpdRequiredFooter"  runat="server" />
            </FooterTemplate>
        </asp:TemplateField>
        <asp:TemplateField>
            <ItemTemplate>
                <asp:ImageButton runat="server" ImageUrl="Images/edit.png" CommandName="Edit" 
  ToolTip="Edit" Width="20px" Height="20px" />
                <!--<asp:ImageButton runat="server" ImageUrl="Images/delete.png" CommandName="Delete" 
  ToolTip="Delete" Width="20px" Height="20px" />-->
            </ItemTemplate>
            <EditItemTemplate>
                <asp:ImageButton runat="server" ImageUrl="Images/save.png" CommandName="Update" 
  ToolTip="Update" Width="20px" Height="20px" />
                <asp:ImageButton runat="server" ImageUrl="Images/cancel.png" CommandName="Cancel" 
  ToolTip="Cancel" Width="20px" Height="20px" />
            </EditItemTemplate>
            <FooterTemplate>
                <asp:ImageButton runat="server" ImageUrl="Images/addnew.png" CommandName="AddNew" 
  ToolTip="Add New" Width="20px" Height="20px" />
            </FooterTemplate>
        </asp:TemplateField>
    </Columns>
  </asp:GridView>
    <br />
    <asp:Label ID="lblSuccessMessage" Text="" runat="server" ForeColor="Green" />
    <br />
    <asp:Label ID="lblErrorMessage" Text="" runat="server"  ForeColor="Red"  />
        </form> 
    </div>
 </body>
 </html>
RJC
  • 17
  • 3

0 Answers0