gpt4 book ai didi

c# - 创建简历问题

转载 作者:太空宇宙 更新时间:2023-11-03 22:21:12 26 4
gpt4 key购买 nike

我正在做一个在线简历管理系统的项目,我在创建简历时遇到了异常。[乙]异常:条件表达式中的数据类型不匹配。 [/b]

这是我创建 Resume-1.aspx.cs 的代码

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;

public partial class _Default : System.Web.UI.Page
{
string sql, sql2, sql3, sql4, sql5, sql6, sql7, sql8, sql9, sql10, sql11, sql12;
string conString = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=D:\\Deliverable4.accdb";
protected OleDbConnection rMSConnection;
protected OleDbCommand rMSCommand;
protected OleDbDataAdapter rMSDataAdapter;
protected DataSet dataSet;
protected DataTable dataTable;
protected DataRow dataRow;
protected void Page_Load(object sender, EventArgs e)
{

}


protected void Button1_Click(object sender, EventArgs e)
{
string contact1 = TextBox1.Text;
string contact2 = TextBox2.Text;
string cellphone = TextBox3.Text;
string address = TextBox4.Text;
string city = TextBox5.Text;
string addqualification = TextBox18.Text;
//string SecondLastDegreeGrade = TextBox17.Text;
//string SecondLastDegreeInstitute = TextBox16.Text;
//string SecondLastDegreeNameOther = TextBox15.Text;
string LastDegreeNameOther = TextBox11.Text;
string LastDegreeInstitute = TextBox12.Text;
string LastDegreeGrade = TextBox13.Text;
string tentativeFromDate = (DropDownList4.SelectedValue + " " + DropDownList7.SelectedValue + " " + DropDownList8.SelectedValue);
try
{
sql6 = "select CountryID from COUNTRY";
rMSConnection = new OleDbConnection(conString);
rMSDataAdapter = new OleDbDataAdapter(sql6, rMSConnection);
dataSet = new DataSet("cID");
rMSDataAdapter.Fill(dataSet, "COUNTRY");

dataTable = dataSet.Tables["COUNTRY"];

int cId = (int)dataTable.Rows[0][0];

rMSConnection.Close();

sql4 = "select PersonalDetailID from PERSONALDETAIL";
rMSConnection = new OleDbConnection(conString);
rMSDataAdapter = new OleDbDataAdapter(sql4, rMSConnection);
dataSet = new DataSet("PDID");
rMSDataAdapter.Fill(dataSet, "PERSONALDETAIL");

dataTable = dataSet.Tables["PERSONALDETAIL"];

int PDId = (int)dataTable.Rows[0][0];

rMSConnection.Close();

sql5 = "update PERSONALDETAIL set Phone1 ='" + contact1 + "' , Phone2 = '" + contact2 + "', CellPhone = '" + cellphone + "', Address = '" + address + "', City = '" + city + "', CountryID = '" + cId + "' where PersonalDetailID = '" + PDId + "'";
rMSConnection = new OleDbConnection(conString);
rMSConnection.Open();
rMSCommand = new OleDbCommand(sql5, rMSConnection);
rMSCommand.ExecuteNonQuery();
rMSConnection.Close();

sql3 = "select DesignationID from DESIGNATION";
rMSConnection = new OleDbConnection(conString);
rMSDataAdapter = new OleDbDataAdapter(sql3, rMSConnection);
dataSet = new DataSet("DesID");
rMSDataAdapter.Fill(dataSet, "DESIGNATION");

dataTable = dataSet.Tables["DESIGNATION"];

int desId = (int)dataTable.Rows[0][0];

rMSConnection.Close();

sql2 = "select DepartmentID from DEPARTMENT";
rMSConnection = new OleDbConnection(conString);
rMSDataAdapter = new OleDbDataAdapter(sql2, rMSConnection);
dataSet = new DataSet("DID");
rMSDataAdapter.Fill(dataSet, "DEPARTMENT");

dataTable = dataSet.Tables["DEPARTMENT"];

int dId = (int)dataTable.Rows[0][0];

rMSConnection.Close();

sql7 = "select ResumeID from RESUME";
rMSConnection = new OleDbConnection(conString);
rMSDataAdapter = new OleDbDataAdapter(sql7, rMSConnection);
dataSet = new DataSet("rID");
rMSDataAdapter.Fill(dataSet, "RESUME");

dataTable = dataSet.Tables["RESUME"];

int rId = (int)dataTable.Rows[0][0];

rMSConnection.Close();

sql = "update RESUME set PersonalDetailID ='" + PDId + "' , DesignationID = '" + desId + "', DepartmentID = '" + dId + "', TentativeFromDate = '" + tentativeFromDate + "', AdditionalQualification = '" + addqualification + "' where ResumeID = '" + rId + "'";

rMSConnection = new OleDbConnection(conString);
rMSConnection.Open();
rMSCommand = new OleDbCommand(sql, rMSConnection);
rMSCommand.ExecuteNonQuery();
rMSConnection.Close();

sql8 = "insert into INSTITUTE (InstituteName) values ('" + LastDegreeInstitute + "')";
rMSConnection = new OleDbConnection(conString);
rMSConnection.Open();
rMSCommand = new OleDbCommand(sql8, rMSConnection);
rMSCommand.ExecuteNonQuery();
rMSConnection.Close();

sql9 = "insert into DEGREE (DegreeName) values ('" + LastDegreeNameOther + "')";
rMSConnection = new OleDbConnection(conString);
rMSConnection.Open();
rMSCommand = new OleDbCommand(sql9, rMSConnection);
rMSCommand.ExecuteNonQuery();
rMSConnection.Close();

sql11 = "select InstituteID from INSTITUTE";
rMSConnection = new OleDbConnection(conString);
rMSDataAdapter = new OleDbDataAdapter(sql11, rMSConnection);
dataSet = new DataSet("insID");
rMSDataAdapter.Fill(dataSet, "INSTITUTE");

dataTable = dataSet.Tables["INSTITUTE"];

int insId = (int)dataTable.Rows[0][0];

rMSConnection.Close();

sql12 = "select DegreeID from DEGREE";
rMSConnection = new OleDbConnection(conString);
rMSDataAdapter = new OleDbDataAdapter(sql12, rMSConnection);
dataSet = new DataSet("degID");
rMSDataAdapter.Fill(dataSet, "DEGREE");

dataTable = dataSet.Tables["DEGREE"];

int degId = (int)dataTable.Rows[0][0];

rMSConnection.Close();

sql10 = "insert into QUALIFICATION (Grade, ResumeID, InstituteID, DegreeID) values ('" + LastDegreeGrade + "', '" + rId + "', '" + insId + "', '" + degId + "')";
rMSConnection = new OleDbConnection(conString);
rMSConnection.Open();
rMSCommand = new OleDbCommand(sql10, rMSConnection);
rMSCommand.ExecuteNonQuery();
rMSConnection.Close();
Response.Redirect("Applicant.aspx");
}
catch (Exception exp)
{
rMSConnection.Close();
Label1.Text = "Exception: " + exp.Message;
}
}
protected void Button2_Click(object sender, EventArgs e)
{
}
}

并创建 Resume-1.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Create Resume-1.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div><center>
<strong><span style="font-size: 16pt"></span></strong>&nbsp;</center>
<center>
&nbsp;</center>
<center style="background-color: silver">
&nbsp;</center>
<center>
<strong><span style="font-size: 16pt">Step 1</span></strong></center>
<center style="background-color: silver">
&nbsp;</center>
<center>
&nbsp;</center>
<center>
&nbsp;</center>
<center>
<asp:Label ID="PhoneNo1" runat="server" Text="Contact No 1*"></asp:Label>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="Items marked with '*' cannot be left blank." ControlToValidate="TextBox1"></asp:RequiredFieldValidator><br />
<asp:Label ID="PhoneNo2" runat="server" Text="Contact No 2"></asp:Label>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox><br />
<asp:Label ID="CellNo" runat="server" Text="Cell Phone No"></asp:Label>
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox><br />
<asp:Label ID="Address" runat="server" Text="Street Address*"></asp:Label>
<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ErrorMessage="Items marked with '*' cannot be left blank." ControlToValidate="TextBox4"></asp:RequiredFieldValidator><br />
<asp:Label ID="City" runat="server" Text="City*"></asp:Label>
<asp:TextBox ID="TextBox5" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" ErrorMessage="Items marked with '*' cannot be left blank." ControlToValidate="TextBox5"></asp:RequiredFieldValidator><br />
<asp:Label ID="Country" runat="server" Text="Country of Origin*"></asp:Label>
<asp:DropDownList ID="DropDownList1" runat="server" DataSourceID="SqlDataSource1" DataTextField="CountryName" DataValueField="CountryID">
</asp:DropDownList><asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString7 %>"
DeleteCommand="DELETE FROM [COUNTRY] WHERE (([CountryID] = ?) OR ([CountryID] IS NULL AND ? IS NULL))"
InsertCommand="INSERT INTO [COUNTRY] ([CountryID], [CountryName]) VALUES (?, ?)"
ProviderName="<%$ ConnectionStrings:ConnectionString7.ProviderName %>" SelectCommand="SELECT * FROM [COUNTRY]"
UpdateCommand="UPDATE [COUNTRY] SET [CountryName] = ? WHERE (([CountryID] = ?) OR ([CountryID] IS NULL AND ? IS NULL))">
<DeleteParameters>
<asp:Parameter Name="CountryID" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="CountryName" Type="String" />
<asp:Parameter Name="CountryID" Type="Int32" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="CountryID" Type="Int32" />
<asp:Parameter Name="CountryName" Type="String" />
</InsertParameters>
</asp:SqlDataSource>
<asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ErrorMessage="Items marked with '*' cannot be left blank." ControlToValidate="DropDownList1"></asp:RequiredFieldValidator><br />
<asp:Label ID="DepartmentOfInterest" runat="server" Text="Department of Interest*"></asp:Label>
<asp:DropDownList ID="DropDownList2" runat="server" DataSourceID="SqlDataSource2" DataTextField="DepartmentName" DataValueField="DepartmentID">
</asp:DropDownList><asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString7 %>"
DeleteCommand="DELETE FROM [DEPARTMENT] WHERE [DepartmentID] = ?" InsertCommand="INSERT INTO [DEPARTMENT] ([DepartmentID], [DepartmentName]) VALUES (?, ?)"
ProviderName="<%$ ConnectionStrings:ConnectionString7.ProviderName %>" SelectCommand="SELECT * FROM [DEPARTMENT]"
UpdateCommand="UPDATE [DEPARTMENT] SET [DepartmentName] = ? WHERE [DepartmentID] = ?">
<DeleteParameters>
<asp:Parameter Name="DepartmentID" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="DepartmentName" Type="String" />
<asp:Parameter Name="DepartmentID" Type="Int32" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="DepartmentID" Type="Int32" />
<asp:Parameter Name="DepartmentName" Type="String" />
</InsertParameters>
</asp:SqlDataSource>
<asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" ErrorMessage="Items marked with '*' cannot be left blank." ControlToValidate="DropDownList2"></asp:RequiredFieldValidator><br />
<asp:Label ID="DesignationAppliedFor" runat="server" Text="Position Applied For*"></asp:Label>
<asp:DropDownList ID="DropDownList3" runat="server" DataSourceID="SqlDataSource3" DataTextField="DesignationName" DataValueField="DesignationID">
</asp:DropDownList><asp:SqlDataSource ID="SqlDataSource3" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString7 %>"
DeleteCommand="DELETE FROM [DESIGNATION] WHERE [DesignationID] = ?" InsertCommand="INSERT INTO [DESIGNATION] ([DesignationID], [DesignationName], [DesignationStatus]) VALUES (?, ?, ?)"
ProviderName="<%$ ConnectionStrings:ConnectionString7.ProviderName %>" SelectCommand="SELECT * FROM [DESIGNATION]"
UpdateCommand="UPDATE [DESIGNATION] SET [DesignationName] = ?, [DesignationStatus] = ? WHERE [DesignationID] = ?">
<DeleteParameters>
<asp:Parameter Name="DesignationID" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="DesignationName" Type="String" />
<asp:Parameter Name="DesignationStatus" Type="String" />
<asp:Parameter Name="DesignationID" Type="Int32" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="DesignationID" Type="Int32" />
<asp:Parameter Name="DesignationName" Type="String" />
<asp:Parameter Name="DesignationStatus" Type="String" />
</InsertParameters>
</asp:SqlDataSource>
<asp:RequiredFieldValidator ID="RequiredFieldValidator6" runat="server" ErrorMessage="Items marked with '*' cannot be left blank." ControlToValidate="DropDownList3"></asp:RequiredFieldValidator><br />
<asp:Label ID="TentativeFromDate" runat="server" Text="Can Join From*"></asp:Label>
<asp:DropDownList ID="DropDownList4" runat="server">
<asp:ListItem>1</asp:ListItem>
<asp:ListItem>2</asp:ListItem>
<asp:ListItem>3</asp:ListItem>
<asp:ListItem>4</asp:ListItem>
<asp:ListItem>5</asp:ListItem>
<asp:ListItem>6</asp:ListItem>
<asp:ListItem>7</asp:ListItem>
<asp:ListItem>8</asp:ListItem>
<asp:ListItem>9</asp:ListItem>
<asp:ListItem>10</asp:ListItem>
<asp:ListItem>11</asp:ListItem>
<asp:ListItem>12</asp:ListItem>
</asp:DropDownList>&nbsp;<asp:DropDownList ID="DropDownList7" runat="server">
<asp:ListItem>1</asp:ListItem>
<asp:ListItem>2</asp:ListItem>
<asp:ListItem>3</asp:ListItem>
<asp:ListItem>4</asp:ListItem>
<asp:ListItem>5</asp:ListItem>
<asp:ListItem>6</asp:ListItem>
<asp:ListItem>7</asp:ListItem>
<asp:ListItem>8</asp:ListItem>
<asp:ListItem>9</asp:ListItem>
<asp:ListItem>10</asp:ListItem>
<asp:ListItem>11</asp:ListItem>
<asp:ListItem>12</asp:ListItem>
<asp:ListItem>13</asp:ListItem>
<asp:ListItem>14</asp:ListItem>
<asp:ListItem>15</asp:ListItem>
<asp:ListItem>16</asp:ListItem>
<asp:ListItem>17</asp:ListItem>
<asp:ListItem>18</asp:ListItem>
<asp:ListItem>19</asp:ListItem>
<asp:ListItem>20</asp:ListItem>
<asp:ListItem>21</asp:ListItem>
<asp:ListItem>22</asp:ListItem>
<asp:ListItem>23</asp:ListItem>
<asp:ListItem>24</asp:ListItem>
<asp:ListItem>25</asp:ListItem>
<asp:ListItem>26</asp:ListItem>
<asp:ListItem>27</asp:ListItem>
<asp:ListItem>28</asp:ListItem>
<asp:ListItem>29</asp:ListItem>
<asp:ListItem>30</asp:ListItem>
<asp:ListItem>31</asp:ListItem>
</asp:DropDownList>
<asp:DropDownList ID="DropDownList8" runat="server">
<asp:ListItem>2010</asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RequiredFieldValidator7" runat="server" ErrorMessage="Items marked with '*' cannot be left blank." ControlToValidate="DropDownList4"></asp:RequiredFieldValidator></center>
<center>
<br />
<asp:Label ID="LastDegreeName" runat="server" Text="Last Degree*"></asp:Label>
<asp:DropDownList ID="DropDownList5" runat="server" DataSourceID="SqlDataSource5" DataTextField="DegreeName" DataValueField="DegreeID">
</asp:DropDownList><asp:SqlDataSource ID="SqlDataSource5" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString7 %>"
DeleteCommand="DELETE FROM [DEGREE] WHERE [DegreeID] = ?" InsertCommand="INSERT INTO [DEGREE] ([DegreeID], [DegreeName]) VALUES (?, ?)"
ProviderName="<%$ ConnectionStrings:ConnectionString7.ProviderName %>" SelectCommand="SELECT * FROM [DEGREE]"
UpdateCommand="UPDATE [DEGREE] SET [DegreeName] = ? WHERE [DegreeID] = ?">
<DeleteParameters>
<asp:Parameter Name="DegreeID" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="DegreeName" Type="String" />
<asp:Parameter Name="DegreeID" Type="Int32" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="DegreeID" Type="Int32" />
<asp:Parameter Name="DegreeName" Type="String" />
</InsertParameters>
</asp:SqlDataSource>
<asp:RequiredFieldValidator ID="RequiredFieldValidator8" runat="server" ErrorMessage="Items marked with '*' cannot be left blank." ControlToValidate="DropDownList5"></asp:RequiredFieldValidator><br />
<asp:Label ID="LastDegreeNameOther" runat="server" Text="Other"></asp:Label>
<asp:TextBox ID="TextBox11" runat="server"></asp:TextBox><br />
<asp:Label ID="LastDegreeInstitute" runat="server" Text="Institute Name*"></asp:Label>
<asp:TextBox ID="TextBox12" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator9" runat="server" ErrorMessage="Items marked with '*' cannot be left blank." ControlToValidate="TextBox12"></asp:RequiredFieldValidator><br />
<asp:Label ID="LastDegreeGrade" runat="server" Text="Marks / Grade*"></asp:Label>
<asp:TextBox ID="TextBox13" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator10" runat="server" ErrorMessage="Items marked with '*' cannot be left blank." ControlToValidate="TextBox13"></asp:RequiredFieldValidator></center>
<center>
&nbsp;</center>
<center>
<br />
<asp:Label ID="SecondLastDegreeName" runat="server" Text="Second Last Degree*"></asp:Label>
<asp:DropDownList ID="DropDownList6" runat="server" DataSourceID="SqlDataSource4" DataTextField="DegreeName" DataValueField="DegreeID">
</asp:DropDownList><asp:SqlDataSource ID="SqlDataSource4" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString7 %>"
DeleteCommand="DELETE FROM [DEGREE] WHERE [DegreeID] = ?" InsertCommand="INSERT INTO [DEGREE] ([DegreeID], [DegreeName]) VALUES (?, ?)"
ProviderName="<%$ ConnectionStrings:ConnectionString7.ProviderName %>" SelectCommand="SELECT * FROM [DEGREE]"
UpdateCommand="UPDATE [DEGREE] SET [DegreeName] = ? WHERE [DegreeID] = ?">
<DeleteParameters>
<asp:Parameter Name="DegreeID" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="DegreeName" Type="String" />
<asp:Parameter Name="DegreeID" Type="Int32" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="DegreeID" Type="Int32" />
<asp:Parameter Name="DegreeName" Type="String" />
</InsertParameters>
</asp:SqlDataSource>
<asp:RequiredFieldValidator ID="RequiredFieldValidator11" runat="server" ErrorMessage="Items marked with '*' cannot be left blank." ControlToValidate="DropDownList6"></asp:RequiredFieldValidator><br />
<asp:Label ID="SecondLastDegreeNameOther" runat="server" Text="Other"></asp:Label>
<asp:TextBox ID="TextBox15" runat="server"></asp:TextBox><br />
<asp:Label ID="SecondLastDegreeInstitute" runat="server" Text="Institute Name*"></asp:Label>
<asp:TextBox ID="TextBox16" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator12" runat="server" ErrorMessage="Items marked with '*' cannot be left blank." ControlToValidate="TextBox16"></asp:RequiredFieldValidator><br />
<asp:Label ID="SecondLastDegreeGrade" runat="server" Text="Marks / Grade*"></asp:Label>
<asp:TextBox ID="TextBox17" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator13" runat="server" ErrorMessage="Items marked with '*' cannot be left blank." ControlToValidate="TextBox17"></asp:RequiredFieldValidator></center>
<center>
<br />
<asp:Label ID="AdditionalQualification" runat="server" Text="Additional Qualification"></asp:Label>
<asp:TextBox ID="TextBox18" runat="server" TextMode="MultiLine"></asp:TextBox></center>
<center>
&nbsp;</center>
<center>
<asp:Button ID="Button1" runat="server" Text="Save and Exit" OnClick="Button1_Click" />
&nbsp;&nbsp;
<asp:Button ID="Button2" runat="server" Text="Next" OnClick="Button2_Click" /></center>
<center>
&nbsp;</center>
<center>
<asp:Label ID="Label1" runat="server"></asp:Label>&nbsp;</center>
<center>
&nbsp;</center>
<center style="background-color: silver">
&nbsp;</center>
</div>
</form>
</body>
</html>

最佳答案

该错误表明您正在创建的 SQL 语句之一存在问题。如果您删除 catch block ,但在 finally block 中关闭连接,您应该能够看到是哪个语句导致了异常。我最好的猜测是您的某个日期存在格式问题。

另外,您真的应该考虑使用参数化查询。这上面写满了 SQL 注入(inject)攻击。

关于c# - 创建简历问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3033832/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com