C#6.0から導入されている null 条件演算子の新しい書き方が便利です。
null 許容型でデータを取ってくる場合などに、null 参照で落ちることを防ぐことができます。
null 許容型でデータを取ってくる場合などに、null 参照で落ちることを防ぐことができます。
// サンプルクラス
class Product
{
public decimal? Amount { get; set; }
public string Name { get; set; }
}
// どっかに記述
var products = new List();
products.Add(new Product() { Name = "ほげほげガム", Amount = 98, });
products.Add(new Product() { Name = "ほげほげガム・プレミアム", Amount = 298, });
products.Add(new Product() { Name = "ほげほげガム・サンプル", Amount = null, });
products.Add(null);
// これだと null を参照して例外になる
// var total = products.Sum(x => x.Amount);
// total = 396
var total = products.Sum(x => x?.Amount ?? 0);
