Сканирование не работает с профилями в Structuremap? - PullRequest
0 голосов
/ 29 января 2020

Я использую StructureMap 4.7.0. Я знаю, что это было прекращено.

IRegistry имеет Scan(), что очень полезно, но при построении профилей мы получаем настраиваемый экземпляр IProfileRegistry, который, кажется, не имеет Scan(). Есть ли для этого особая причина, и можно ли это сделать по-другому? Я попытался привести мой IProfileRegistration экземпляр к IRegistry и использовать для него метод Scan(), но он не добавит никакие типы в реестр моего профиля.

new Container(registry =>
{
    registry.Profile("something", p =>
    {
        // p is IProfileRegistry which doesn't have Scan()
        p.Scan(scanner => 
        {

        });

        // I thought this cheat might work but it doesn't for some reason (the cast is valid)
        (p as IRegistry).Scan(scanner => 
        {
            // scanner.Assembly.....
            // scanner.AddAllTypes.....

            // I also tried a custom convention adding types directly, to no avail
            p.With(new MyCustomConvention());
        });

        // of course this works as expected
        p.For<>().Use<>();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...