File tree Expand file tree Collapse file tree 2 files changed +19
-3
lines changed
src/ExtendedXmlSerializer/ExtensionModel/Xml
test/ExtendedXmlSerializer.Tests.ReportedIssues Expand file tree Collapse file tree 2 files changed +19
-3
lines changed Original file line number Diff line number Diff line change @@ -153,7 +153,9 @@ public IMemberSerializer Get(IMember parameter)
153153
154154 IMemberSerializer Create ( IMemberSerializer serializer , Type owner )
155155 {
156- var item = CollectionItemTypeLocator . Default . Get ( serializer . Profile . MemberType ) ;
156+ var item = serializer . Profile . MemberType == typeof ( string )
157+ ? null // strings should not be serialized as a collection of char
158+ : CollectionItemTypeLocator . Default . Get ( serializer . Profile . MemberType ) ;
157159 var itemType = _member . Get ( owner )
158160 . Item1 ;
159161 var member = ( IMemberSerializer ) new MemberSerializer ( serializer , _converters . Get ( itemType ) ) ;
Original file line number Diff line number Diff line change @@ -29,7 +29,11 @@ void Verify()
2929 serializer . Cycle ( second )
3030 . Should ( ) . BeEquivalentTo ( second ) ;
3131
32- var group = new Group2 { Type = GroupType . Large } ;
32+ var third = new SubjectWithMembers2 { Item = 123 , Message = "Message" , Time = DateTimeOffset . Now } ;
33+ serializer . Cycle ( third )
34+ . Should ( ) . BeEquivalentTo ( third ) ;
35+
36+ var group = new Group2 { Type = GroupType . Large } ;
3337 serializer . Cycle ( group )
3438 . Should ( ) . BeEquivalentTo ( group ) ;
3539
@@ -78,7 +82,17 @@ public class SubjectWithMembers
7882 public DateTimeOffset Time { [ UsedImplicitly ] get ; set ; }
7983 }
8084
81- public class Group2
85+ public class SubjectWithMembers2
86+ {
87+ [ XmlText ]
88+ public string Message { [ UsedImplicitly ] get ; set ; }
89+
90+ public int Item { get ; set ; }
91+
92+ public DateTimeOffset Time { [ UsedImplicitly ] get ; set ; }
93+ }
94+
95+ public class Group2
8296 {
8397 [ XmlText ( Type = typeof ( GroupType ) ) ] public GroupType Type = GroupType . Small ;
8498 }
You can’t perform that action at this time.
0 commit comments