Если вы собираетесь регистрироваться с объектов вашего домена и используете контейнер IOC, который вы, возможно, захотите поменять, я бы порекомендовал вам использовать шаблон Service Locator (вы можете посмотреть на архитектуру Sharp # для хорошей реализации SafeServiceLocator, который оборачивает ServiceLocator от msoft более информативными сообщениями об ошибках).
Я также хотел бы предложить вам подумать, хотите ли вы регистрировать тип ошибки, которую вы показываете в своем примере. Я бы хотел, чтобы объект домена выдавал исключение в этом случае и позволял вызывающей стороне решить, было ли это то, что ожидалось приложением (и, следовательно, не должно регистрироваться), или это представляет ситуацию, которую хочет вызывающая сторона. иметь дело с каким-то образом.