null?
, , null unknown. Null Is Not Empty . SQL . null , null int? .
, :
1. nulls
, . ( .NET). , :
public class Model
{
public IReadOnlyList<ModelItem> Items { get; }
public Model(IEnumerable<ModelItem> items)
{
Items = new List<ModelItems>(items);
}
}
2.
null, ( ). , null , null throw.
public class ModelItem
{
public double? Value { get; set; }
}
public class Model
{
public ICollection<ModelItem> Items { get; set; }
public double? Average
{
get
{
if (Items == null)
{
return null;
}
return Items.Average(i => i?.Value);
}
}
}
, Average<Nullable<double>> InvalidOperationException , ,
, null - , null. null -, , , - (, , , , null).
, , null ( ), , (??).