Click here to Skip to main content
15,885,985 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
When inserting the values in another table (User_Information) it says cannot insert null values in the table for column (ID) which is primary key. But I'm passing value to the primary key!!

What I have tried:

My GridView is:-

ASP.NET
<asp:GridView ID="GrdVwViewUser" runat="server" EnableViewState="true" BorderStyle="None" AutoGenerateColumns="false"
        CssClass="col-md-4 col-xs-4 text-center">

        <columns>
            <asp:TemplateField HeaderStyle-CssClass="heading text-center text-info" HeaderText="Users Details" HeaderStyle-Font-Size="30px" HeaderStyle-Height="40px" ItemStyle-CssClass="form-group">
                <itemtemplate>
                    ID : <asp:Label ID="LblID" runat="server" Text='<%#Eval("ID") %>'><br />
                    UserName : <asp:Label ID="LblUserName" CssClass="form-inline" runat="server" Text='<%#Eval("UserName") %>'><br />
                    Password : <asp:Label ID="LblPassword" runat="server" Text='<%#Eval("Password") %>'><br />
                    FirstName : <asp:Label ID="LblFirstName" runat="server" Text='<%#Eval("FirstName") %>'><br />
                    LastName : <asp:Label ID="LblLastName" runat="server" Text='<%#Eval("LastName") %>'><br />
                    Email : <asp:Label ID="LblEmail" runat="server" Text='<%#Eval("Email") %>'><br />
                    PhoneNo : <asp:Label ID="LblPhoneNo" runat="server" Text='<%#Eval("PhoneNo") %>'><br />
                    Location : <asp:Label ID="LblLocation" runat="server" Text='<%#Eval("Location") %>'><br />
                    Created_By : <asp:Label ID="LblCreated_By" runat="server" Text='<%#Eval("Created_By") %>'><br />
                    Gender : <asp:Label ID="LblGender" runat="server" Text='<%#Eval("Gender") %>'><br />
                    Date of Birth : <asp:Label ID="Lbldob" runat="server" Text='<%# Convert.ToDateTime (Eval("dob")).ToString("dd-MMM-yyyy") %>'><br />
                    Region : <asp:Label ID="Lblregion" runat="server" Text='<%#Eval("region") %>'><br />
                    Language : <asp:Label ID="Lbllang" runat="server" Text='<%#Eval("lang") %>'><br />
                    Deleted : <asp:Label ID="LblDeleteUser" runat="server" Text='<%#Eval("DeleteUser") %>'><br />
                    Registered On : <asp:Label ID="LblRegisterDate" runat="server" Text='<%# Convert.ToDateTime (Eval("RegisterDate")).ToString("dd-MMM-yyyy hh:mm tt") %>'><br />
                    About Me : <asp:Label ID="LblAbout" runat="server" Text='<%#Eval("about") %>'><br />
                    Authorised : <asp:Label ID="LblAuthorised" runat="server" Text='<%#Eval("Authorised") %>'><br />

                    <asp:LinkButton ID="LnkBtnApprove" runat="server" CssClass="btn-sm btn-info form-inline" CommandArgument='<%#Eval("ID") %>' OnCommand="LnkBtnApprove_Command" >Approve
                </itemtemplate>
            
        </columns>


And Command Argument is:-

C#
protected void LnkBtnApprove_Command(object sender, CommandEventArgs e)
    {

        long id = Convert.ToInt64(e.CommandArgument);

            using (SampleDataContext dbContext = new SampleDataContext())
            {
                try
                {
                    string uploadsucc = "";


                    //Insert Into User_Information from UserInfoPrimary 
                    var insertuserinfo = (from r in dbContext.UserInfoPrimaries
                                          where r.ID == Convert.ToInt64(id)
                                          select r).FirstOrDefault();

                    if (insertuserinfo != null)
                    {
                        User_Information ui = new User_Information
                        {
                           
                            UserName = insertuserinfo.UserName,
                            Password = insertuserinfo.Password,
                            FirstName = insertuserinfo.FirstName,
                            LastName = insertuserinfo.LastName,
                            Email = insertuserinfo.Email,
                            PhoneNo = insertuserinfo.PhoneNo,
                            Location = insertuserinfo.Location,
                            Created_By = insertuserinfo.Created_By,
                            Gender = insertuserinfo.Gender,
                            dob = Convert.ToDateTime(insertuserinfo.dob),
                            region = insertuserinfo.region,
                            lang = insertuserinfo.lang,
                            DeleteUser = Convert.ToChar(insertuserinfo.DeleteUser),
                            RegisterDate = Convert.ToDateTime(insertuserinfo.RegisterDate),
                            ID = Convert.ToInt64(id),
                        };

                        dbContext.User_Informations.InsertOnSubmit(ui);
                        dbContext.SubmitChanges();
                    }

                    //Insert Into register from registerup 
                    var insertregister = (from r in dbContext.registerups
                                          where r.ID == Convert.ToInt64(LblIDS.Text)
                                          select r).FirstOrDefault();

                    if (insertregister != null)
                    {
                        register re = new register
                        {
                            education = insertregister.education,
                            employment = insertregister.employment,
                            profession = insertregister.profession,
                            employed = insertregister.employed,
                            income = insertregister.income,
                            emptype = insertregister.emptype,
                            district = insertregister.district,
                            region = insertregister.region,
                            community = insertregister.community,
                            subcaste = insertregister.subcaste,
                            gotra = insertregister.gotra,
                            mtongue = insertregister.mtongue,
                            language = insertregister.language,
                            pervalues = insertregister.pervalues,
                            state = insertregister.state,
                            country = insertregister.country,
                            height = insertregister.height,
                            bodytype = insertregister.bodytype,
                            complexion = insertregister.complexion,
                            cases = insertregister.cases,
                            diet = insertregister.diet,
                            drink = insertregister.drink,
                            smoke = insertregister.smoke,
                            hobby = insertregister.hobby,
                            about = insertregister.about,
                            UserName = insertregister.UserName,
                            ID = Convert.ToInt64(id)
                        };

                        dbContext.registers.InsertOnSubmit(re);
                        dbContext.SubmitChanges();
                    }

                    else
                    {
                        uploadsucc = "register error";
                    }

                    //Insert Into registerdetail from registerdetailup
                    var insertregisterdet = (from r in dbContext.registerdetailups
                                             where r.ID == Convert.ToInt64(LblIDS.Text)
                                             select r).FirstOrDefault();

                    if (insertregisterdet != null)
                    {
                        registerdetail regdet = new registerdetail
                        {
                            place = insertregisterdet.place,
                            raashi = insertregisterdet.raashi,
                            manglik = insertregisterdet.manglik,
                            father = insertregisterdet.father,
                            mother = insertregisterdet.mother,
                            brother = insertregisterdet.brother,
                            sister = insertregisterdet.sister,
                            familytype = insertregisterdet.familytype,
                            familyvalue = insertregisterdet.familyvalue,
                            UserName = insertregisterdet.UserName,
                            ID = Convert.ToInt64(id)
                        };

                        dbContext.registerdetails.InsertOnSubmit(regdet);
                        dbContext.SubmitChanges();
                    }

                    else
                    {
                        uploadsucc = "register detail error";
                    }

                    //Insert Into partner from partnerup
                    var insertpartnerdet = (from p in dbContext.partnerups
                                            where p.ID == Convert.ToInt64(LblIDS.Text)
                                            select p).FirstOrDefault();

                    if (insertpartnerdet != null)
                    {
                        partner prtnr = new partner
                        {
                            ID = Convert.ToInt64(id),
                            UserName = insertpartnerdet.UserName,
                            ppMaritalStatus = insertpartnerdet.ppMaritalStatus,
                            ppAge = insertpartnerdet.ppAge,
                            ppHeight = insertpartnerdet.ppHeight,
                            ppCommunity = insertpartnerdet.ppCommunity,
                            ppRegion = insertpartnerdet.ppRegion,
                            ppHomeDistrict = insertpartnerdet.ppHomeDistrict,
                            ppManglikStatus = insertpartnerdet.ppManglikStatus,
                            ppEducation = insertpartnerdet.ppEducation,
                            ppEmploymentStatus = insertpartnerdet.ppEmploymentStatus,
                            ppProfession = insertpartnerdet.ppProfession,
                            ppAnnualIncome = insertpartnerdet.ppAnnualIncome,
                            ppFamilyType = insertpartnerdet.ppFamilyType,
                            ppCurrentCity = insertpartnerdet.ppCurrentCity,
                            ppBodyType = insertpartnerdet.ppBodyType,
                            ppComplexion = insertpartnerdet.ppComplexion,
                            ppDiet = insertpartnerdet.ppDiet,
                            ppDrink = insertpartnerdet.ppDrink,
                            ppSmoke = insertpartnerdet.ppSmoke,
                            ppMore = insertpartnerdet.ppMore
                        };

                        dbContext.partners.InsertOnSubmit(prtnr);
                        dbContext.SubmitChanges();
                    }

                    else
                    {
                        uploadsucc = "partner error";
                    }

                    if (uploadsucc == "")
                    {
                        LblSubmitResult.Text = "Approved All Successfully!!";
                    }

                    else if (uploadsucc == "register error")
                    {
                        LblSubmitResult.Text = "Can't Upload in Register Table. No Data Given By User to Save!!";
                    }

                    else if (uploadsucc == "register detail error")
                    {
                        LblSubmitResult.Text = "Can't Upload in Register Detail Table. No Data Given By User to Save!!";
                    }

                    else if (uploadsucc == "partner error")
                    {
                        LblSubmitResult.Text = "Can't Upload in Partner Table. No Data Given By User to Save!!";
                    }
                }

                catch
                {
                    ClientScript.RegisterStartupScript(this.GetType(), "ErrorMessage", "<script>alert('Cannot Insert to Main Table. Contact Support')</script>");
                }

    
                UserInfoPrimary uip = dbContext.UserInfoPrimaries.SingleOrDefault(x => x.ID == Convert.ToInt64(id));
                uip.Authorised = 'Y';
                dbContext.SubmitChanges();

            }

       
    }


Please HELP!! I can't find anyway to do this.
Posted
Updated 3-Mar-16 18:32pm
v2
Comments
Maciej Los 3-Mar-16 14:39pm    
Have you tried to debug your programme?
Deepak Kanswal Sharma 3-Mar-16 19:31pm    
Many times. The problem is

User_Information ui = new User_Information
{

UserName = insertuserinfo.UserName,
Password = insertuserinfo.Password,
FirstName = insertuserinfo.FirstName,
LastName = insertuserinfo.LastName,
Email = insertuserinfo.Email,
PhoneNo = insertuserinfo.PhoneNo,
Location = insertuserinfo.Location,
Created_By = insertuserinfo.Created_By,
Gender = insertuserinfo.Gender,
dob = Convert.ToDateTime(insertuserinfo.dob),
region = insertuserinfo.region,
lang = insertuserinfo.lang,
DeleteUser = Convert.ToChar(insertuserinfo.DeleteUser),
RegisterDate = Convert.ToDateTime(insertuserinfo.RegisterDate),
ID = Convert.ToInt64(id), //PROBLEM IS HERE.
};

The value in id is correct but it's not inserting the value in "ID"
Deepak Kanswal Sharma 3-Mar-16 20:15pm    
The "ID" column is taking value "_Page". When I check it in debug.
Maciej Los 4-Mar-16 1:49am    
Well, this is very good information. Now, you know that something went wrong. Please, check solution1, it might be the reason of troubles.
Cheers,
Maciej

1 solution

Looks like it is issue with Link button and its command argument. Follow below code snippet:

Gridview code:
ASP
<asp:gridview id="GrdVwViewUser" runat="server" enableviewstate="true" borderstyle="None" autogeneratecolumns="false" cssclass="col-md-4 col-xs-4 text-center" xmlns:asp="#unknown">
  <columns>
       <asp:templatefield>
              <itemtemplate>
                      <asp:linkbutton id="btnApprove" runat="server">
					  CommandArgument='<%#Eval("ID")%>' 
					  OnCommand="LnkBtnApprove_Command" Text="Approve">
                      </asp:linkbutton>
               </itemtemplate>
			   .........
        </asp:templatefield>
   </columns>
   .........
</asp:gridview>

Code-Behind code:
C#
protected void LnkBtnApprove_Command(Object sender, CommandEventArgs e)
{
	int id = int32.Parse(e.CommandArgument.ToString());
	// Imeplement your logic
}
 
Share this answer
 
Comments
Deepak Kanswal Sharma 4-Mar-16 0:52am    
Dear Manas,

Thanks for your answer and I think the problem is not with the linkbutton.
As I'm getting the value correct here:-

long id = Convert.ToInt64(e.CommandArgument); //The id is getting correct value.

ID = Convert.ToInt64(id), // Even here the value for id is correct. But the value for "ID" is null. DON'T KNOW WHY!!
[no name] 4-Mar-16 0:58am    
If you are getting correct value id then you should get correct value. By the way what is the value you are getting in id variable(which is from command argument)..
Deepak Kanswal Sharma 4-Mar-16 3:37am    
The value is 8. That's the case I can't understand why it's happening when I have value in id as 8 then how can it send null value to ID in table. :(
Deepak Kanswal Sharma 4-Mar-16 11:04am    
Is there any other way to do this? With linq. If you have something please share.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900