Mercurial > pub > ImplabNet
comparison Implab.ServiceHost/Unity/RegisterElement.cs @ 269:ff581cff7003 v3
Working on Unity container xml configuration
author | cin |
---|---|
date | Tue, 24 Apr 2018 01:46:02 +0300 |
parents | |
children | ade80d94dfb5 |
comparison
equal
deleted
inserted
replaced
268:0be8a6ae8307 | 269:ff581cff7003 |
---|---|
1 using System; | |
2 using System.Xml.Serialization; | |
3 using Unity.Lifetime; | |
4 using Unity.Registration; | |
5 | |
6 namespace Implab.ServiceHost.Unity { | |
7 | |
8 [XmlRoot("register", Namespace = Schema.ContainerConfigurationNamespace)] | |
9 public class RegisterElement : AbstractRegistration { | |
10 | |
11 /// <summary> | |
12 /// An optional type specification for the service registration, | |
13 /// must be assignable from the type specified by <see cref="ImplementedType"/> | |
14 /// </summary> | |
15 [XmlAttribute("provides")] | |
16 public string ProvidesType { get; set; } | |
17 | |
18 /// <summary> | |
19 /// The type which is registered as a service in the container. | |
20 /// </summary> | |
21 [XmlAttribute("type")] | |
22 public string ImplementedType { get; set; } | |
23 | |
24 [XmlElement("signleton", typeof(SimgletonLifetimeElement))] | |
25 [XmlElement("context", typeof(ContextLifetimeElement))] | |
26 [XmlElement("container", typeof(ContainerLifetimeElement))] | |
27 [XmlElement("hierarchy", typeof(HierarchicalLifetimeElement))] | |
28 public LifetimeElement Lifetime {get; set;} | |
29 | |
30 [XmlElement("constructor", typeof(ConstructorInjectorElement))] | |
31 [XmlElement("property", typeof(PropertyInjectorElement))] | |
32 [XmlElement("method", typeof(MethodInjectorElement))] | |
33 public AbstractInjectorElement[] Injectors { get; set; } | |
34 } | |
35 | |
36 } |