.NET, Architecture, ALM, Cloud
Order order = orders.Find(delegate(Order currentOrder)
{
return currentOrder.OrderID == 42;
});
if (order == null)
order = new Order();
Trade trade = new Trade(order);
Avec l'opérateur "??", notre code deviendrai :
Order order = orders.Find(delegate(Order currentOrder)
{
return currentOrder.OrderID == 42;
}) ?? new Order();
Trade trade = new Trade(order);
L'opérateur "??" ne marche qu'avec les types nullables. Le code suivant ne pourra donc pas compiler :
decimal a = order.GetTotalAmount() ?? decimal.MinValue ;
Nous verrons dans un prochain post comment rendre nullable ces types. A noter aussi que le Find() peut être simplifié en C# 3.0, sujet qui fera l'objet aussi d'un prochain message (voir même plusieurs...).