无法将参数值从文本框转换为字符串

这是我的buttonsubmit_click事件的代码。 始终显示错误。 我不知道错误来自哪里。 有时错误是:

对象必须实现IConvertible。

 da.InsertCommand.Parameters.Add("@ApplicantUsername", SqlDbType.VarChar).Value = txtUsername.Text; da.InsertCommand.Parameters.Add("@Branch", SqlDbType.VarChar).Value = ddlNear.SelectedValue; da.InsertCommand.Parameters.Add("@NoALastName", SqlDbType.VarChar).Value = txtLname.Text; da.InsertCommand.Parameters.Add("@NoAFirstName", SqlDbType.VarChar).Value = txtFname.Text; da.InsertCommand.Parameters.Add("@NoAMiddleName", SqlDbType.VarChar).Value = txtMname; da.InsertCommand.Parameters.Add("@NoACivilStatus", SqlDbType.VarChar).Value = ddlCivil.SelectedValue; da.InsertCommand.Parameters.Add("@NoAMonth", SqlDbType.VarChar).Value = ddlMonth.SelectedValue; da.InsertCommand.Parameters.Add("@NoADay", SqlDbType.VarChar).Value = ddlDay.SelectedValue; da.InsertCommand.Parameters.Add("@NoAYear", SqlDbType.VarChar).Value = ddlYear.SelectedValue; da.InsertCommand.Parameters.Add("@NoAAge", SqlDbType.VarChar).Value = txtAge.Text; da.InsertCommand.Parameters.Add("@NoSLastName", SqlDbType.VarChar).Value = txtSlname.Text; da.InsertCommand.Parameters.Add("@NoSFirstName", SqlDbType.VarChar).Value = txtSfname.Text; da.InsertCommand.Parameters.Add("@NoSMiddleName", SqlDbType.VarChar).Value = txtSmname.Text; da.InsertCommand.Parameters.Add("@Residence", SqlDbType.VarChar).Value = txtPerm.Text; da.InsertCommand.Parameters.Add("@TelephoneNumber", SqlDbType.VarChar).Value = txtNum.Text; da.InsertCommand.Parameters.Add("@ResidenceYearsThere", SqlDbType.VarChar).Value = txtPstay.Text; da.InsertCommand.Parameters.Add("@DescriptionOfHouse", SqlDbType.VarChar).Value = txtDescHouse.Text; { if (cbOwn.Checked) { da.InsertCommand.Parameters.AddWithValue("@DescriptionOfHouseType", "Owned"); } else if (cbAmortized.Checked) { da.InsertCommand.Parameters.AddWithValue("@DescriptionOfHouseType", "Amortized"); } else if (cbRent.Checked) { da.InsertCommand.Parameters.AddWithValue("@DescriptionOfHouseType", "Rented"); } else da.InsertCommand.Parameters.AddWithValue("@DescriptionOfHouseType", "Null"); } da.InsertCommand.Parameters.Add("@LivingCondition", SqlDbType.VarChar).Value = txtLivingCon.Text; da.InsertCommand.Parameters.Add("@PreviousAddress", SqlDbType.VarChar).Value = txtPrev.Text; da.InsertCommand.Parameters.Add("@PreviousAddressYears", SqlDbType.VarChar).Value = txtPrevstay.Text; da.InsertCommand.Parameters.Add("@ProvincialAddress", SqlDbType.VarChar).Value = txtProv.Text; da.InsertCommand.Parameters.Add("@ProvincialAddressYears", SqlDbType.VarChar).Value = txtProvStay.Text; da.InsertCommand.Parameters.Add("@MembersOfHousehold", SqlDbType.VarChar).Value = txtMembers.Text; da.InsertCommand.Parameters.Add("@DiSName1", SqlDbType.VarChar).Value = txtDisName1.Text; da.InsertCommand.Parameters.Add("@DiSAge1", SqlDbType.VarChar).Value = txtDisAge1.Text; da.InsertCommand.Parameters.Add("@DiSSchoolandAddress1", SqlDbType.VarChar).Value = txtDisSadd1.Text; da.InsertCommand.Parameters.Add("@DiSLevel1", SqlDbType.VarChar).Value = ddlDisLvl1.SelectedValue; da.InsertCommand.Parameters.Add("@DiSName2", SqlDbType.VarChar).Value = txtDisName2.Text; da.InsertCommand.Parameters.Add("@DiSAge2", SqlDbType.VarChar).Value = txtDisAge2.Text; da.InsertCommand.Parameters.Add("@DiSSchoolandAddress2", SqlDbType.VarChar).Value = txtDisSadd2.Text; da.InsertCommand.Parameters.Add("@DiSLevel2", SqlDbType.VarChar).Value = ddlDisLvl2.SelectedValue; da.InsertCommand.Parameters.Add("@DiSName3", SqlDbType.VarChar).Value = txtDisName3.Text; da.InsertCommand.Parameters.Add("@DiSAge3", SqlDbType.VarChar).Value = txtDisAge3.Text; da.InsertCommand.Parameters.Add("@DiSSchoolandAddress3", SqlDbType.VarChar).Value = txtDisSadd3.Text; da.InsertCommand.Parameters.Add("@DiSLevel3", SqlDbType.VarChar).Value = ddlDisLvl3.SelectedValue; da.InsertCommand.Parameters.Add("@DiSName4", SqlDbType.VarChar).Value = txtDisName4.Text; da.InsertCommand.Parameters.Add("@DiSAge4", SqlDbType.VarChar).Value = txtDisAge4.Text; da.InsertCommand.Parameters.Add("@DiSSchoolandAddress4", SqlDbType.VarChar).Value = txtDisSadd4.Text; da.InsertCommand.Parameters.Add("@DiSLevel4", SqlDbType.VarChar).Value = ddlDisLvl4.SelectedValue; da.InsertCommand.Parameters.Add("@EmployerOfApplicant", SqlDbType.VarChar).Value = txtEmployer.Text; da.InsertCommand.Parameters.Add("@ApplicantPosition", SqlDbType.VarChar).Value = txtPost.Text; da.InsertCommand.Parameters.Add("@ApplicantYears", SqlDbType.VarChar).Value = txtYrs.Text; da.InsertCommand.Parameters.Add("@ApplicantEmployerAddress", SqlDbType.VarChar).Value = txtAdd.Text; da.InsertCommand.Parameters.Add("@ApplicantTelNum", SqlDbType.VarChar).Value = txtCont.Text; da.InsertCommand.Parameters.Add("@EmployerOfSpouse", SqlDbType.VarChar).Value = txtSemp.Text; da.InsertCommand.Parameters.Add("@SpousePosition", SqlDbType.VarChar).Value = txtSpost.Text; da.InsertCommand.Parameters.Add("@SpouseYears", SqlDbType.VarChar).Value = txtSyrs.Text; da.InsertCommand.Parameters.Add("@SpouseEmployerAddress", SqlDbType.VarChar).Value = txtSadd.Text; da.InsertCommand.Parameters.Add("@SpouseTelNum", SqlDbType.VarChar).Value = txtSnum.Text; da.InsertCommand.Parameters.Add("@BusinessName", SqlDbType.VarChar).Value = txtBusname.Text; da.InsertCommand.Parameters.Add("@BusinessYearsOperation", SqlDbType.VarChar).Value = txtOperation.Text; da.InsertCommand.Parameters.Add("@BusinessAddress", SqlDbType.VarChar).Value = txtBadd.Text; da.InsertCommand.Parameters.Add("@BusinessTelNum", SqlDbType.VarChar).Value = txtBcon.Text; da.InsertCommand.Parameters.Add("@PersonInterviewed1", SqlDbType.VarChar).Value = txtPersonInter1.Text; da.InsertCommand.Parameters.Add("@PersonAddress1", SqlDbType.VarChar).Value = txtPersonAdd1.Text; da.InsertCommand.Parameters.Add("@PersonRelationship1", SqlDbType.VarChar).Value = txtPersonRelation1.Text; da.InsertCommand.Parameters.Add("@PersonComment1", SqlDbType.VarChar).Value = txtPersonComment1.Text; da.InsertCommand.Parameters.Add("@PersonInterviewed2", SqlDbType.VarChar).Value = txtPersonInter2.Text; da.InsertCommand.Parameters.Add("@PersonAddress2", SqlDbType.VarChar).Value = txtPersonAdd2.Text; da.InsertCommand.Parameters.Add("@PersonRelationship2", SqlDbType.VarChar).Value = txtPersonRelation2.Text; da.InsertCommand.Parameters.Add("@PersonComment2", SqlDbType.VarChar).Value = txtPersonComment2.Text; da.InsertCommand.Parameters.Add("@RealProperty", SqlDbType.VarChar).Value = txtRealProp.Text; da.InsertCommand.Parameters.Add("@PersonalProperty", SqlDbType.VarChar).Value = txtPersonalProp.Text; da.InsertCommand.Parameters.Add("@Collaterals", SqlDbType.VarChar).Value = txtCollat.Text; da.InsertCommand.Parameters.Add("@PurposeOfLoan", SqlDbType.VarChar).Value = txtPurpose.Text; da.InsertCommand.Parameters.Add("@LoanDesired", SqlDbType.VarChar).Value = txtLoanUnit.Text; da.InsertCommand.Parameters.Add("@MaxLoanVal", SqlDbType.VarChar).Value = txtMLV.Text; da.InsertCommand.Parameters.Add("@PromisoryNoteVal", SqlDbType.VarChar).Value = txtPNV.Text; da.InsertCommand.Parameters.Add("@MonthlyInstallment1", SqlDbType.VarChar).Value = txtMonthlyInstall.Text; da.InsertCommand.Parameters.Add("@Terms", SqlDbType.VarChar).Value = txtTerms.Text; da.InsertCommand.Parameters.Add("@AdjApplicantSalary", SqlDbType.VarChar).Value = txtAppSal.Text; da.InsertCommand.Parameters.Add("@AdjApplicantDeduction", SqlDbType.VarChar).Value = txtAppDed.Text; da.InsertCommand.Parameters.Add("@AdjApplicantNetPay", SqlDbType.VarChar).Value = txtAppNet.Text; da.InsertCommand.Parameters.Add("@AdjSpouseSalary", SqlDbType.VarChar).Value = txtSpouseSal.Text; da.InsertCommand.Parameters.Add("@AdjSpouseDeduction", SqlDbType.VarChar).Value = txtSpouseDed.Text; da.InsertCommand.Parameters.Add("@AdjSpouseNetPay", SqlDbType.VarChar).Value = txtSpouseNet.Text; da.InsertCommand.Parameters.Add("@AdjBusinessSalary", SqlDbType.VarChar).Value = txtBusinessSal.Text; da.InsertCommand.Parameters.Add("@AdjBusinessDeduction", SqlDbType.VarChar).Value = txtBusinessDed.Text; da.InsertCommand.Parameters.Add("@AdjBusinessNetPay", SqlDbType.VarChar).Value = txtBusinessNet.Text; da.InsertCommand.Parameters.Add("@AdjOtherSalary", SqlDbType.VarChar).Value = txtOtherSal.Text; da.InsertCommand.Parameters.Add("@AdjOtherDeduction", SqlDbType.VarChar).Value = txtOtherDed.Text; da.InsertCommand.Parameters.Add("@AdjOtherNetPay", SqlDbType.VarChar).Value = txtOtherNet.Text; da.InsertCommand.Parameters.Add("@TotalMonthlyIncome", SqlDbType.VarChar).Value = txtTotalMonthlyIncome.Text; da.InsertCommand.Parameters.Add("@LessExpenses", SqlDbType.VarChar).Value = txtLessExp.Text; da.InsertCommand.Parameters.Add("@LivingExpenses", SqlDbType.VarChar).Value = txtLivingExp.Text; da.InsertCommand.Parameters.Add("@Rentals", SqlDbType.VarChar).Value = txtRentals.Text; da.InsertCommand.Parameters.Add("@LightAndWater", SqlDbType.VarChar).Value = txtLightWater.Text; da.InsertCommand.Parameters.Add("@Education", SqlDbType.VarChar).Value = txtEducation.Text; da.InsertCommand.Parameters.Add("@Amortization", SqlDbType.VarChar).Value = txtAmortization.Text; da.InsertCommand.Parameters.Add("@Transportation", SqlDbType.VarChar).Value = txtTranspo.Text; da.InsertCommand.Parameters.Add("@OtherExpenses", SqlDbType.VarChar).Value = txtOtherExp.Text; da.InsertCommand.Parameters.Add("@TotalMonthlyExpenses", SqlDbType.VarChar).Value = txtTotalMonthlyExpenses.Text; da.InsertCommand.Parameters.Add("@GrossDisposableIncome", SqlDbType.VarChar).Value = txtGrossDispInc.Text; da.InsertCommand.Parameters.Add("@Class", SqlDbType.VarChar).Value = txtClass.Text; da.InsertCommand.Parameters.Add("@NetDisposableIncome", SqlDbType.VarChar).Value = txtNetDispInc.Text; da.InsertCommand.Parameters.Add("@MonthlyInstallment2", SqlDbType.VarChar).Value = txtMonthlyInstallment.Text; da.InsertCommand.Parameters.Add("@Excess", SqlDbType.VarChar).Value = txtExcess.Text; da.InsertCommand.Parameters.Add("@CreditStatName1", SqlDbType.VarChar).Value = txtCreditorName1.Text; da.InsertCommand.Parameters.Add("@CreditStatType1", SqlDbType.VarChar).Value = txtCreditType1.Text; da.InsertCommand.Parameters.Add("@CreditStatPN1", SqlDbType.VarChar).Value = txtCreditPN1.Text; da.InsertCommand.Parameters.Add("@CreditStatPresentBal1", SqlDbType.VarChar).Value = txtPresentBal1.Text; da.InsertCommand.Parameters.Add("@CreditStatArrears1", SqlDbType.VarChar).Value = txtArrears1.Text; da.InsertCommand.Parameters.Add("@CreditStatRemarks1", SqlDbType.VarChar).Value = txtRemarks1.Text; da.InsertCommand.Parameters.Add("@CreditStatName2", SqlDbType.VarChar).Value = txtCreditorName2.Text; da.InsertCommand.Parameters.Add("@CreditStatType2", SqlDbType.VarChar).Value = txtCreditType2.Text; da.InsertCommand.Parameters.Add("@CreditStatPN2", SqlDbType.VarChar).Value = txtCreditPN2.Text; da.InsertCommand.Parameters.Add("@CreditStatPresentBal2", SqlDbType.VarChar).Value = txtPresentBal2.Text; da.InsertCommand.Parameters.Add("@CreditStatArrears2", SqlDbType.VarChar).Value = txtArrears2.Text; da.InsertCommand.Parameters.Add("@CreditStatRemarks2", SqlDbType.VarChar).Value = txtRemarks2.Text; da.InsertCommand.Parameters.Add("@RelativeName1", SqlDbType.VarChar).Value = txtRelativeName1.Text; da.InsertCommand.Parameters.Add("@RelativeRelationship1", SqlDbType.VarChar).Value = txtRelativeRelationship1.Text; da.InsertCommand.Parameters.Add("@RelativeAddress1", SqlDbType.VarChar).Value = txtRelativeAdd1.Text; da.InsertCommand.Parameters.Add("@RelativeName2", SqlDbType.VarChar).Value = txtRelativeName2.Text; da.InsertCommand.Parameters.Add("@RelativeRelationship2", SqlDbType.VarChar).Value = txtRelativeRelationship2.Text; da.InsertCommand.Parameters.Add("@RelativeAddress2", SqlDbType.VarChar).Value = txtRelativeAdd2.Text; da.InsertCommand.Parameters.Add("@NarrativeReport", SqlDbType.VarChar).Value = txtNarrative.Text; cs.Open(); da.InsertCommand.ExecuteNonQuery(); cs.Close(); 

你错过了txtMname Text属性,所以改变这个:

 da.InsertCommand.Parameters.Add("@NoAMiddleName", SqlDbType.VarChar).Value = txtMname; 

对此:

 da.InsertCommand.Parameters.Add("@NoAMiddleName", SqlDbType.VarChar).Value = txtMname.Text;