Приложение (иначе Служба) должно координировать действия, а модель Домена должна содержать правила.
Часть этого может зависеть от специфики, но вы можете сделать что-то вроде этого ...
// Todo Command Service
public ResponseModel CreateTodoItem(CreateTodoItemCommand command, User user) {
var userPermissionCheck = _userTodoCommandPermissions.GetPermissions(user, command.GroupId);
if (!userPermissionCheck.CanCreate) {
return ResponseModel.Failed();
}
// continue
}
Я бы сделал нечто подобное на той же стороне запроса.
С точки зрения CQRS, я не уверен, что существует реальная необходимость избавиться от Сервиса слой - но, возможно, ваш обработчик разработан таким образом, чтобы справиться с этим. Так что вроде как зависит.