Mercurial > pub > ImplabNet
view Implab.ServiceHost/Unity/ValueParameterElement.cs @ 281:e0916ddc9950 v3 tip
code cleanup and refactoring
author | cin |
---|---|
date | Fri, 01 Jun 2018 21:35:24 +0300 |
parents | 6691aff01de1 |
children |
line wrap: on
line source
using System.ComponentModel; using System.Xml.Serialization; namespace Implab.ServiceHost.Unity { public class ValueParameterElement : AbstractInjectionParameter { [XmlAttribute("value")] public string Value { get; set; } [XmlText] public string Text { get; set; } string GetTextValue() { return string.IsNullOrEmpty(Value) ? Text : Value; } public override void Visit(InjectionParameterBuilder builder) { var type = builder.ResolveInjectedValueType(TypeName); builder.SetValue(type, TypeDescriptor.GetConverter(type).ConvertFromString(GetTextValue())); } } }