Найдите свой config.inc.php и добавьте или отредактируйте строку
$cfg['DefaultCharset'] = 'iso-8859-1';
Мне не нравятся те атрибуты также
, можно сделать, все использование эти Настраивает метод контейнера единицы:
Первый регистр тип
unityContainer.RegisterType<MyInterface,MyImpl>(
new ContainerControlledLifetimeManager());
, Если у Вас есть несколько конструкторов, необходимо будет сделать это так, Единица вызывает конструктора без параметров (если ни один не установил Единицу, пойдет для самого толстого)
unityContainer.Configure<InjectedMembers>()
.ConfigureInjectionFor<MyImpl>(
new InjectionConstructor());
зависимость от свойства Setting
unityContainer.Configure<InjectedMembers>()
.ConfigureInjectionFor<MyImpl>(
new InjectionProperty(
"SomePropertyName",
new ResolvedParameter<MyOtherInterface>()));
зависимость от метода Конфигурирования
unityContainer.Configure<InjectedMembers>()
.ConfigureInjectionFor<MyImpl>(
new InjectionMethod(
"SomeMethodName",
new ResolvedParameter<YetAnotherInterface>()));
Следующая пошаговая демонстрация показывает один способ сделать его через конфигурацию. Можно, конечно, соединить его проводом через код также. http://aardvarkblogs.wordpress.com/unity-container-tutorials/10-setter-injection/
Вы можете попробовать следующее:
этот код в MyClass
[InjectionMethod]
public void Initialize(
[Dependency] ILogger logger
, а затем его вызов:
unitycontainer.BuildUp<MyClass>(new MyClass());
unity вызовет метод Initialize с зависимостью от контейнера, а затем вы сможете сохраните его в частной переменной в MyClass или что-нибудь в этом роде ...