我想通过选中/取消选中 Blazor Maui 混合应用程序中的复选框来更新 SQL 表。无论我尝试什么,它都不会改变 SQL 表中的任何内容。 这是复选框的代码:
<th><input type="checkbox" checked = "@equipment.IsCheckedOut" onclick="CheckOutEquipment(@equipment);"></th>
这是它调用的函数:
public void CheckOutEquipment(Equipment equipment)
{
MySqlConnectionStringBuilder builder = new MySqlConnectionStringBuilder
{
Server = "localhost",
UserID = "root",
Password = "password",
Database = "demo211",
};
MySqlConnection connection = new MySqlConnection(builder.ConnectionString);
connection.Open();
string update = $"update Equipment set CheckedOut = 1 where ID={equipment.ID}";
MySqlCommand updateCmd = new MySqlCommand(update,connection);
updateCmd.ExecuteNonQuery();
connection.Close();
}
您当前的版本尝试调用 JavaScript 函数,而它应该调用 C# 函数。 要解决此问题,您需要在事件名称前面添加一个
@
,如下所示:
<th><input type="checkbox" checked = "@equipment.IsCheckedOut" @onclick="CheckOutEquipment(equipment)"></th>