I have a tried list, array and all different types
I have a list of items which is serializing just fine
in c#
public List<Item> TransactionLines = new List<ItemSerial>();
in vb.net
Public WithEvents TransactionLines As New List(Of Item)
xml output is
<TransactionLines>
<Item>
<elements>
</item>
<Item>
<elements>
</item>
</TransactionLines>
my serilization method is the following
In C#
public string SerializeToXML<T>(T obj)
{
string XMLString = "";
XmlSerializer mySerializer = new XmlSerializer(obj.GetType());
using (MemoryStream myMemStream = new MemoryStream()) {
mySerializer.Serialize(myMemStream, obj);
myMemStream.SeekToBegin();
XMLString = myMemStream.ReadToEnd(Encoding.UTF8);
return XMLString;
}
In vb.net
Public Function SerializeToXML(Of T)(ByVal obj As T) As String
Dim XMLString As String = ""
Dim mySerializer As XmlSerializer = New XmlSerializer(obj.GetType)
Using myMemStream As MemoryStream = New MemoryStream()
mySerializer.Serialize(myMemStream, obj)
myMemStream.SeekToBegin()
XMLString = myMemStream.ReadToEnd(Encoding.UTF8)
End Using
Return XMLString
End Function
List to be serialized
c#
[XmlElement(Order = 17)]
public List<ItemSerial> Serials = new List<ItemSerial>();
vb.net
<XmlElement(Order:=17)>
Public Serials As New List(Of ItemSerial)
This is my xml output
<Serials>
<Serial>A</Serial>
<ExpiryDate>0001-01-01T00:00:00</ExpiryDate>
<Qty>1</Qty>
</Serials>
<Serials>
<Serial>B</Serial>
<ExpiryDate>0001-01-01T00:00:00</ExpiryDate>
<Qty>1</Qty>
</Serials>
The following output is required.
<Serials>
<ItemSerial>
<Serial>A</Serial>
<ExpiryDate>0001-01-01T00:00:00</ExpiryDate>
<Qty>1</Qty>
</ItemSerial>
<ItemSerial>
<Serial>B</Serial>
<ExpiryDate>0001-01-01T00:00:00</ExpiryDate>
<Qty>1</Qty>
</ItemSerial>
</Serials>
Please explain what I did wrong so far and what is to be done.