diff Implab.ServiceHost/Unity/SerializedParameterElement.cs @ 277:963b17c275be v3

Refactoring Added <array> element to injection parameters Working on registrations of factories
author cin
date Sat, 28 Apr 2018 18:48:09 +0300
parents 6fefd5811b9b
children 6691aff01de1
line wrap: on
line diff
--- a/Implab.ServiceHost/Unity/SerializedParameterElement.cs	Sat Apr 28 00:11:38 2018 +0300
+++ b/Implab.ServiceHost/Unity/SerializedParameterElement.cs	Sat Apr 28 18:48:09 2018 +0300
@@ -5,7 +5,7 @@
 
 namespace Implab.ServiceHost.Unity
 {
-    public class SerializedParameterElement : InjectionParameterElement, ISerializedValue {
+    public class SerializedParameterElement : InjectionParameterElement {
         [XmlAttribute("href")]
         public string Location { get; set; }
 
@@ -22,7 +22,12 @@
         }
 
         public override void Visit(InjectionValueBuilder builder) {
-            builder.Visit(this);
+            var type = builder.ResolveInjectedValueType(TypeName);
+
+            var serializer = new XmlSerializer(type);
+            using(var reader = GetReader())
+                builder.SetValue(type, serializer.Deserialize(reader));
+            
         }
     }
 }
\ No newline at end of file