我有很多服务,每个服务都有很多功能。几乎每个功能都需要当前用户执行它所需的特定“角色”。
有没有比将以下代码放在每个方法的开头更好的方法?如果我可以用 Attributes 装饰这些方法,那就太好了,但我不确定如何在这里应用它们。
public void CreateTruck(TruckDto dto)
{
var currentUser = GetCurrentUser();
if (!currentUser.Can("CreateTruck"))
throw PermissionException("...");
// otherwise proceed normally
}