c# - 可为空的对象必须有一个值?

标签 c# .net linq-to-sql exception-handling nullable

线上:bool travel = fill.travel.Value; 我收到以下错误:

Nullable object must have a value

我不确定为什么。我想要做的就是获取旅行数据库中当前为假的值。任何帮助,将不胜感激。

using (var db = new DataClasses1DataContext())
{
    var fill = (from f in db.expenseHdrs
                where f.rptNo == getPkRowReport()
                select f).FirstOrDefault();

    txtReportDesc.Text = fill.description;
    txtPeriod.Text = fill.period;
    txtPurpose.Text = fill.purpose;

    bool travel = fill.travel.Value;
    chkTravel.Checked = travel 
 }

最佳答案

你可以随时切换到

 fill.travel.GetValueOrDefault()

提供默认值 (false),或来自数据库的 bool 列的值。或者您可以使用重载指定默认值。无论哪种方式,可空对象当前都没有值,这就是您得到该异常的原因。

关于c# - 可为空的对象必须有一个值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10555682/

相关文章:

c# - Linq 延迟操作

c# - 跨表LinqToSQL查询WP7 C#

linq - 我应该花时间学习 OR\M 或 LINQ 吗?

c# - 在转发器中获取 DropDownList 值

c# - .NET 中的字符串比较

java - 相当于 Java 编码的 C# 代码

C# 位图不按原样保存

.net - 现在跳到 LINQ to SQL 是个坏主意吗?

c# - 限制 RESTful 应用程序中的服务调用次数

c# - Swift 中的 init 与 C# 中的构造函数相同吗?