Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Asp.Net Web窗体中的操作异常无效_C#_Mysql_Asp.net - Fatal编程技术网

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
    ,您应该使用
    语句将其放入
  • 您可以通过连接字符串来创建查询。这是一种可怕的做法,也是一个巨大的安全问题。使用参数

  • 很好的易观,但我已经向他解释了过程,但是海报不听,从一个错误跌落到下一个错误。(迟早它对之前的问题完全不接受,也会忽略这些答案)