Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.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# 需要从SQL Server CE数据库获取数据的帮助吗_C#_Sql_Sql Server Ce - Fatal编程技术网

C# 需要从SQL Server CE数据库获取数据的帮助吗

C# 需要从SQL Server CE数据库获取数据的帮助吗,c#,sql,sql-server-ce,C#,Sql,Sql Server Ce,我有一个winform,我正在尝试将数据保存到SQL Server CE数据库并检索该数据 在winfom中运行以下操作时,我无法检索任何数据: string lookupValue; SqlCeConnection connection; connection = new SqlCeConnection(); connection.ConnectionString = "Data Source= LaZSolutions.sdf"; SqlCeCommand cmd2 = connecti

我有一个winform,我正在尝试将数据保存到SQL Server CE数据库并检索该数据

在winfom中运行以下操作时,我无法检索任何数据:

string lookupValue;

SqlCeConnection connection;
connection = new SqlCeConnection();
connection.ConnectionString = "Data Source= LaZSolutions.sdf";

SqlCeCommand cmd2 = connection.CreateCommand();

if (txtOrderNum.Text != null)
{
   lookupValue = txtOrderNum.Text;
   cmd2.CommandText = "SELECT Customers.FirstName, Customers.LastName, Customers.Address, Customers.City, Customers.State, Customers.Zip, Customers.Phone, Customers.Mobile, Customers.OrderNum, Customers.Comments, Customers.Email, Orders.OrderDate, Orders.OrderNum AS Expr1, Orders.Cost, Orders.Image FROM Customers INNER JOIN Orders ON Customers.OrderNum = Orders.OrderNum WHERE (Orders.OrderNum = '" + lookupValue + "')";
}
else if (txtFName.Text != null && txtLName.Text != null)
{
   cmd2.CommandText = "SELECT Customers.*, Orders.* From Customers INNER JOIN Orders ON Customers.OrderNum = Orders.OrderNum where Customers.Firstname = '" + Convert.ToString(txtFName.Text) + "' and Customers.LastName = '" + Convert.ToString(txtLName.Text) + "'";
}

connection.Open();
cmd2.ExecuteNonQuery();
SqlCeDataReader readData = cmd2.ExecuteReader();

if (readData != null)
{
   while (readData.Read())
      txtFName.Text = readData["FirstName"].ToString();
   txtLName.Text = readData["lastname"].ToString();
   txtAddress.Text = readData["address"].ToString();
   txtCity.Text = readData["city"].ToString();
   txtState.Text = readData["state"].ToString();
   txtZip.Text = readData["zip"].ToString();
   txtHPhone.Text = readData["phone"].ToString();
   txtMPhone.Text = readData["mobile"].ToString();
   txtComments.Text = readData["Comments"].ToString();
   txtEmail.Text = readData["email"].ToString();
   txtOrderNum.Text = readData["OrderNum"].ToString();
   txtOrderdate.Text = readData["orderdate"].ToString();
   lblPrice.Text = readData["Cost"].ToString();
}
else
{
   MessageBox.Show("No Results Found");
}
connection.Close();

有人能告诉我我的错误吗?当我在VS.Thank you中运行查询时,它返回1行。

我认为问题可能出在while(readData.Read())行上。尝试在设置值的代码行周围放置{},看看这是否有帮助

    while (readData.Read())
    {
        txtFName.Text = readData["FirstName"].ToString();
        txtLName.Text = readData["lastname"].ToString();
        ...
        lblPrice.Text = readData["Cost"].ToString();
    }

您确定它不缺少while循环的支架吗

试试这个

 while (readData.Read())
{
                txtFName.Text = readData["FirstName"].ToString();
            txtLName.Text = readData["lastname"].ToString();
            txtAddress.Text = readData["address"].ToString();
            txtCity.Text = readData["city"].ToString();
            txtState.Text = readData["state"].ToString();
            txtZip.Text = readData["zip"].ToString();
            txtHPhone.Text = readData["phone"].ToString();
            txtMPhone.Text = readData["mobile"].ToString();
            txtComments.Text = readData["Comments"].ToString();
            txtEmail.Text = readData["email"].ToString();
            txtOrderNum.Text = readData["OrderNum"].ToString();
            txtOrderdate.Text = readData["orderdate"].ToString();
            lblPrice.Text = readData["Cost"].ToString();
}

在C#中,如果省略循环或条件语句上的大括号,则块只包含下一行

会出现什么错误?