Stiamo lavorando a un progetto in cui dobbiamo gestire queste condizioni. cioè:.
Un utente può salvare un ordine in queste condizioni:
- L'utente ha l'autorizzazione "SaveOrder"
- L'ordine è in stato "spedito"
- Il negozio online è aperto.
Questa condizione è per esempio - vorrei sottolineare che abbiamo tre condizioni da aree diverse (ruolo e permessi, stato interno dell'ordine dell'oggetto e stato di un altro oggetto dominio).
In un progetto precedente abbiamo usato questo codice:
public static bool CanSaveOrder(Order order)
{
return
CurrentPrincipal.HasPermission(Permissions.SaveOrder) &&
order.State == States.Shipped &&
OnlineShop.IsOpen();
}
Ma sento che può esserci una soluzione più elegante / dinamica.
Ho letto qualcosa su un "motore del ruolo aziendale". È un modo giusto per gestire questa condizione?