0
我有一個用戶可以預訂導師的網絡表單。但他們必須先選擇課程/主題,日期和時間進行預訂。我有一個運行數據庫的方法來檢查課程,日期和時間是否不在同一時間出現在表中。換句話說,它檢查預訂是否可用,或者是否有人已經預訂了該特定日期和時間的課程。在'and'附近預期條件的上下文中指定的非布爾類型的表達式。 C#
代碼:
public void Availability(string course, string time, string date)
{
try
{
using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["tlcString"].ConnectionString))
{
string message = "Booking already exists";
string query = "Select * From Bookings Where [[email protected]] and [[email protected]] and [[email protected]];";
using (SqlCommand command = new SqlCommand(query, conn))
{
command.Parameters.Add("@course", SqlDbType.NVarChar, 50).Value = course;
command.Parameters.Add("@time", SqlDbType.NVarChar, 50).Value = time;
command.Parameters.Add("@date", SqlDbType.DateTime, 50).Value = date;
conn.Open();
using (SqlDataReader dr = command.ExecuteReader())
{
if (dr.Read())
ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert('" + message + "');", true);
dr.Close();
}
conn.Close();
}
}
}
catch
{
string error = "Error checking availability of booking";
ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert('" + error + "');", true);
}
}
它示出了該誤差
其中條件預計在上下文指定的非布爾類型的表達式,鄰近 '和'
爲什麼你在'[Course = @ course]'中使用方括號?別。 – CodeCaster