##// END OF EJS Templates
Implab: added XmlDefaultSeializer (SerializersPool is now obsolete)...
Implab: added XmlDefaultSeializer (SerializersPool is now obsolete) Implab.ServiceHost: rewritten TypeReference (added support for nested types), stable API

File last commit:

r277:963b17c275be v3
r278:6691aff01de1 v3
Show More
RegisterElement.cs
35 lines | 1.2 KiB | text/x-csharp | CSharpLexer
cin
Working on Unity container xml configuration
r269 using System;
using System.Xml.Serialization;
using Unity.Lifetime;
using Unity.Registration;
namespace Implab.ServiceHost.Unity {
[XmlRoot("register", Namespace = Schema.ContainerConfigurationNamespace)]
cin
Refactoring...
r277 public class RegisterElement : TypeAbstractRegistration {
cin
Working on Unity container xml configuration
r269
/// <summary>
cin
Working on Unity xml configuration
r271 /// An optional type which is registered as a service in the container, must be assignable to <see cref="ProvidesType">.
cin
Working on Unity container xml configuration
r269 /// </summary>
cin
Working on Unity xml configuration: Refactoring in progress
r273 [XmlAttribute("mapTo")]
public string MapToType { get; set; }
cin
Working on Unity container xml configuration
r269
cin
Working on Unity container xml configuration
r270 [XmlElement("constructor", typeof(ConstructorInjectionElement))]
[XmlElement("property", typeof(PropertyInjectionElement))]
[XmlElement("method", typeof(MethodInjectionElement))]
cin
Refactoring...
r277 public AbstractMemberInjection[] Injectors { get; set; }
public override Type GetImplementationType(Func<string, Type> resolver) {
return string.IsNullOrEmpty(MapToType) ? null : resolver(MapToType);
}
cin
preview version of Unity xml configuration
r272
cin
Refactoring...
r277 public override void Visit(TypeRegistrationBuilder builder) {
if(Injectors != null)
foreach(var injector in Injectors)
injector.Visit(builder);
cin
preview version of Unity xml configuration
r272 }
cin
Refactoring...
r277
cin
Working on Unity container xml configuration
r269 }
}