c# - 在实体框架中插入设置为空参数的存储过程
问题描述
我想null
在某些值中插入参数,但出现以下错误:
System.NullReferenceException:“对象引用未设置为对象的实例。” System.Windows.Forms.ListControl.SelectedValue.get 返回 null。
该程序是一个Windows Forms
应用程序,代码如下:
using (var context = new SamenEntities())
{
person ppp = new person()
{
id = textBox1.Text.Trim(),
name = textBox2.Text.Trim(),
family = textBox3.Text.Trim(),
birth_date = dateTimePicker1.Value,
birth_provice = Convert.ToInt32(comboBox1.SelectedValue.ToString()),
note = richTextBox1.Text.Trim(),
img_personal = ImageToByteArray(pictureBox1.Image),
date_register = DateTime.Now
};
context.persons.Add(ppp);
context.SaveChanges();
}
如何null
从 SQL 服务器输入值或输入默认值?
解决方案
通过查看异常,它表示ComboBox
没有选择任何值。这与 SQL Server 目前不接受无关null
。
使用该信息,您应该检查是否选择了一个值,这意味着它不是null
,如下所示:
object selectedValue = comboBox1.SelectedValue;
if(selectedValue != null)
{
ppp.birth_provice = Convert.ToInt32(selectedValue.ToString()),
}
最重要的是,您可能需要考虑使用Int32.TryParse
以确保所选值是实际整数。
推荐阅读
- c# - 如何使用 Npgsql 管理 SQLserver 到 PostgreSQL 的迁移?
- optimization - 如果增加决策变量的界限,为什么问题变得不可行?
- amazon-web-services - 如何了解授予用户的所有 AWS IAM 权限
- php - 用户输入值与数据库数组值未使用 JSON 进行验证
- javascript - 我有两个数组,两个数组都有数据,但都有 field_id 所以我想要合并数组
- ios - 当我使用 DRAW_SCENE 时,SCNTechnique 管道几乎立即崩溃
- sql-server - 为什么 DB_ID() 函数不能在 DBCC PAGE 函数中使用
- r - 如何抑制最左边的列(天),因为它一直以整数形式出现在我的输出中
- azure - 如何通过 API 接收 12 个月和 36 个月(1 年和 3 年)的预留实例 (VM) 定价
- python - 将 MultiIndex 转换为数据框