Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.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# 无法隐式转换类型';字符串';至';int';使用加法_C#_Asp.net - Fatal编程技术网

C# 无法隐式转换类型';字符串';至';int';使用加法

C# 无法隐式转换类型';字符串';至';int';使用加法,c#,asp.net,C#,Asp.net,如何修复错误?该错误出现在OrderNumber+AddOrderNumber和OrderNumber=sqlCmd1.ExecuteScalar().ToString()行上 谢谢这里是代码: int AddOrderNumber = 1; int OrderNumber; TextBox1.Text = OrderNumber + AddOrderNumber; TextBox2.Text = DateTime.Now.ToString

如何修复错误?该错误出现在OrderNumber+AddOrderNumber和OrderNumber=sqlCmd1.ExecuteScalar().ToString()行上

谢谢这里是代码:

  int AddOrderNumber = 1;
        int OrderNumber;


        TextBox1.Text = OrderNumber + AddOrderNumber;
        TextBox2.Text = DateTime.Now.ToString("MM-dd-yyyy");
        TextBox3.Text = (string)Session["name"];


        using (SqlConnection con6 = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["connectionString"].ConnectionString))
        {

            //Grab Customer #
            using (SqlCommand sqlCmd1 = new SqlCommand { CommandText = "SELECT TOP 1 [OrderNumber] FROM [datarep].[dbo].[OrderHeader] Order By [OrderNumber] DESC", Connection = con6 })
            {
                con6.Open();
                object result = sqlCmd1.ExecuteScalar();

                if (result != null)
                {
                    OrderNumber = sqlCmd1.ExecuteScalar().ToString();

                }
                else
                {

                }
                con6.Close();
            }
        }
OrderNumber
的类型为
int
,您试图将
字符串
传递给该变量。在
sqlCmd1.ExecuteScalar().ToString()上执行
转换.ToInt32


只需阅读编译器告诉您的内容。该错误准确地告诉您在这种情况下需要知道的所有信息。OrderNumber在数据库中存储为数字还是字符串?如果您打算对它进行计算,为什么要使用
.ToString()
呢?它存储为一个整数,只需从
ExecuteScalar()
中删除
.ToString()
。根本没有理由转换数据库中的值。
OrderNumber = sqlCmd1.ExecuteScalar().ToString();
OrderNumber = Convert.ToInt32(sqlCmd1.ExecuteScalar().ToString());