C# Asp.Net Web窗体中的操作异常无效
我的页面中有此代码C# Asp.Net Web窗体中的操作异常无效,c#,mysql,asp.net,C#,Mysql,Asp.net,我的页面中有此代码 public partial class SiteMaster : MasterPage { MySqlConnection conn = new MySqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString); private String truckID = ""; private String
public partial class SiteMaster : MasterPage
{
MySqlConnection conn = new MySqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
private String truckID = "";
private String userID = "";
protected void Page_Load(object sender, EventArgs e)
{
try
{
userID = Session["userid"].ToString();
truckID = Session["truck_ID"].ToString();
hyperlink_Profile.NavigateUrl = "~/View/Profile.aspx?u=" + userID;
hyperlink_Inspection.NavigateUrl = "~/View/Inspection.aspx?u=" + truckID;
hyperlink_MaintenanceChecklist.NavigateUrl = "~/view/maintenanceChecklist.aspx?u=" + truckID;
hyperlink_MaintenanceSchedule.NavigateUrl = "~/View/MaintenanceSchedule.aspx?u=" + truckID;
hyperlink_MaintenanceRecord.NavigateUrl = "~/View/MaintenanceRecord.aspx?u=" + truckID;
hyperlink_TruckData.NavigateUrl = "~/View/TruckData.aspx?u=" + truckID;
}
catch (HttpException ex)
{
System.Diagnostics.Debug.WriteLine("ERROR: " + ex.ToString());
}
MySqlConnection conn = new MySqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
MySqlCommand getRegistration = new MySqlCommand("Select registration_no from trucks where truck_id = " + truckID + "");
MySqlDataReader setRegistration = getRegistration.ExecuteReader();
RegistrationNo.Text = setRegistration.ToString();
}
}
我正在处理某个ASP.Net webforms项目,在MySqlDataReader setRegistration=getRegistration.ExecuteReader()代码>
MySql.Data.dll中发生了“System.invalidoOperationException”类型的异常,但未在用户代码中处理该异常
这可能是什么错误?您的代码有几个问题:
你没有打开你的连接
您没有为该命令指定连接。您可以将其作为构造函数中的第二个参数传递
调用MySqlDataReader.ToString(),它将只返回类型名。如果只想从查询中获取1个值,只需使用ExecuteScalar()
你没有关闭你的连接。它实现了IDisposable
,您应该使用语句将其放入中
您可以通过连接字符串来创建查询。这是一种可怕的做法,也是一个巨大的安全问题。使用参数
很好的易观,但我已经向他解释了过程,但是海报不听,从一个错误跌落到下一个错误。(迟早它对之前的问题完全不接受,也会忽略这些答案)