C# 未处理 SqlException - 在 System.Data.dll

SqlException was unhandled by c# - in System.Data.dll

所以当我收到此错误时,我正在尝试 运行 我的代码:

'System.Data.SqlClient.SqlException' 类型的异常发生在 System.Data.dll 但未在用户代码中处理 附加信息:'b'.

附近的语法不正确

代码如下所示:

            string query = "select a.Navn from Ejer a" +
                       "INNER JOIN SlipsEjer b ON a.Id = b.EjerId" +
                       "Where b.SlipsId = SlipsId";

        using (connection = new SqlConnection(connectionString))
        using (SqlCommand command = new SqlCommand(query, connection))
        using (SqlDataAdapter adapter = new SqlDataAdapter(command))
        {
            command.Parameters.AddWithValue("@SlipsId", SlipsLB.SelectedValue);

            DataTable ejerTable = new DataTable();
            adapter.Fill(ejerTable);

            EjerLB.DisplayMember = "Navn";
            EjerLB.ValueMember = "Id";
            EjerLB.DataSource = ejerTable;
        }

我不知道为什么..我已经尝试 运行 通过 Sql 中的新查询,它在那里工作正常..

真心希望各位帮帮忙!谢谢

在每行末尾添加一个space。还要为参数添加一个@符号。

string query = "select a.Navn from Ejer a " +
               "INNER JOIN SlipsEjer b ON a.Id = b.EjerId " +
               "Where b.SlipsId = @SlipsId";

有人建议在评论中使用逐字字符串。这是逐字字符串的示例。您可以轻松地从 Management Studio 复制您的查询。虽然我更喜欢使用存储过程。

string query = @"
select a.Navn from Ejer a
INNER JOIN SlipsEjer b ON a.Id = b.EjerId
Where b.SlipsId = @SlipsId
";