c# - 尝试将数据按日期过滤到 DataGridView 时出现无效的强制转换异常
问题描述
我希望用户能够从 datetimepicker 中选择一个日期,并能够在数据网格上查看该选定日期的条目。
这是我目前正在使用的代码:
private void dateTimePicker1_ValueChanged(object sender, EventArgs e)
{
//filter date wise using datetimepicker. dateadded is a column in mysql db workbench.
mcon.Open();
MySqlCommand cmd = mcon.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText= "Select * from inventory_base.products where dateadded= @dateselected";
cmd.Parameters.AddWithValue("@dateselected", SqlDbType.DateTime);
cmd.Parameters["@dateSelected"].Value = dateTimePicker1.Value;
DataTable dt = new DataTable();
MySqlDataAdapter da = new MySqlDataAdapter(cmd);
da.Fill(dt);
dataGridView1.DataSource = dt;
cmd.ExecuteNonQuery();
mcon.Close();
}
当我运行此代码时,我收到一条错误消息,内容如下:
System.InvalidCastException:'从'DateTime'到'Int32'的无效转换。' 在 da.Fill(dt) 线上。
解决方案
推荐阅读
- c - Linux Kernel 我应该将 asmlinkage 用于实现系统调用的函数吗?
- latex - Overleaf 的参考书目定制
- c# - 处理 ajax 500 “内部服务器错误”
- python - 如何让机器人说出 Discord.py 中的在线和离线人数
- ruby - 如何使用 Ruby 对 Shopify 进行基本的 GraphQL 查询
- kubernetes - 通过 GCP 的 Kubernetes 仪表板
- python - 如何在 Pygame 中将对象与其阴影相关联?
- next.js - framer-motion、styled-components 和 nextjs Link 组件没有动画
- r - 根据另一列中的值添加新列
- asp.net - JetBrains DotTrace