Не может разрешить символ SetAllProperties в StructureMap.Net4

В моем проекте я использую StructureMap.Net4 (версия 3.0.3) с StructureMap (3.0.3) . Я настроил Ioc с помощью следующего кода для ввода сеттера

public static IContainer Initialize()
        {

            ObjectFactory.Initialize(x =>
                        {





                            x.For<ICacheManager>().Use<MemmoryCacheManager>();
                            x.SetAllProperties(y => y.OfType<ICacheManager>);
                            //x.ForConcreteType<AuthorizationManager>()
                            //    .Configure.Setter<ICacheManager>(y => y.CacheManager)
                            //    .IsTheDefault();
                        });
            return ObjectFactory.Container;
        }

Но я получаю сообщение об ошибке не может разрешить символ SetAllProperties . я уже ссылался на это следующее пространство имен

using StructureMap;
using StructureMap.Graph;

Почему я получаю эту ошибку? как я могу решить это? или я должен ссылаться на любое другое пространство имен

2 ответа

Решение

StructureMap 3 изменился там, где настроено сеттерное впрыскивание. Теперь он настроен с использованием PolicyExpression, он может быть доступен по адресу ConfigurationExpression.Policies, Я приложил образец ниже.

ObjectFactory.Configure(x =>
{
    x.Policies.SetAllProperties(y => y.OfType<ICacheManager>());
});

Попробуйте поставить брекеты

x.SetAllProperties(y => y.OfType<ICacheManager>());
Другие вопросы по тегам