view Implab.ServiceHost/Unity/ValueElement.cs @ 278:6691aff01de1 v3

Implab: added XmlDefaultSeializer (SerializersPool is now obsolete) Implab.ServiceHost: rewritten TypeReference (added support for nested types), stable API
author cin
date Thu, 03 May 2018 09:59:44 +0300
parents 963b17c275be
children 8714471e8d78
line wrap: on
line source

using System.Xml.Serialization;

namespace Implab.ServiceHost.Unity {
    public class ValueElement : InstanceAbstractRegistration {
        
        [XmlAttribute("value")]
        public string Value { get; set; }

        [XmlText]
        public string Text { get; set; }

        string GetTextValue() {
            return string.IsNullOrEmpty(Value) ? Text : Value;
        }

        public string TypeName {
            get {
                return RegistrationType;
            }
        }

        public override void Visit(InstanceRegistrationBuilder builder) {
            base.Visit(builder);
            var parameter = new ValueParameterElement {
                Value = Value,
                Text = Text
            };
            parameter.Visit(builder.ValueBuilder);
        }
    }
}