Самый простой ответ: укажите наивысший приоритет переопределения для вашего сервиса.
[OverridePriority(Priority.Highest)]
public class MyServiceImpl : IMyService {
// ...
}
Однако может возникнуть проблема, если зарегистрировано более одной службы с наивысшим приоритетом, в этом случае выбрасывается AmbiguousMatchException
.Я имею в виду, вы должны контролировать свой код, чтобы избежать таких случаев.Если вы считаете, что существует вероятность того, что среда выполнения приложения загрузит вредоносную сборку, предоставьте собственную службу AppRuntime
, которая может проверять сборки перед их загрузкой.
Проверьте https://github.com/kephas-software/kephas/wiki/Application-Services#override-priority для получения дополнительной информации.на эту тему.