mboost-dp1
XML Serialisering
- Forside
- ⟨
- Forum
- ⟨
- Programmering
Hey Alle
Jeg sidder og skal serialisere en datamodel til xml.
pga. nogle design overvejelser er jeg nød til at hav[/code]e nolge IDer repræsenteret i en klasse istedet for refferencen til dem.
som serialiseret bliver til
jeg er ikke interresseret i der står "int" men derimod fx FileID.
Jeg har kigget på http://msdn.microsoft.com/en-us/library/83y7df3e%2... men syntes ikke lige jeg kan finde noget der er brugbart.
Den automatiske serialisering er skide smart normalt :)
Jeg sidder og skal serialisere en datamodel til xml.
pga. nogle design overvejelser er jeg nød til at hav[/code]e nolge IDer repræsenteret i en klasse istedet for refferencen til dem.
public class Container
{
public List<int> FileList= new List<int>();
}
som serialiseret bliver til
<FileList>
<int>1</int>
<int>2</int>
<int>3</int>
<int>4</int>
</FileList>
jeg er ikke interresseret i der står "int" men derimod fx FileID.
Jeg har kigget på http://msdn.microsoft.com/en-us/library/83y7df3e%2... men syntes ikke lige jeg kan finde noget der er brugbart.
Den automatiske serialisering er skide smart normalt :)
namespace FileListSerialization
{
class Program
{
static void Main(string[] args)
{
var s = new XmlSerializer(typeof(FileContainer));
var l = new FileContainer();
l.FileList.AddRange(Enumerable.Range(1, 10));
using(TextWriter writer = new StreamWriter(@"test.xml"))
{
s.Serialize(writer, l);
}
}
}
[XmlRoot]
public class FileContainer
{
private List<int> _fileList = new List<int>();
[XmlArrayItem("FileId")]
public List<int> FileList
{
get { return _fileList; }
set { _fileList = value; }
}
}
}
Output:
<?xml version="1.0" encoding="utf-8"?>
<FileContainer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<FileList>
<FileId>1</FileId>
<FileId>2</FileId>
<FileId>3</FileId>
<FileId>4</FileId>
<FileId>5</FileId>
<FileId>6</FileId>
<FileId>7</FileId>
<FileId>8</FileId>
<FileId>9</FileId>
<FileId>10</FileId>
</FileList>
</FileContainer>
Gå til top
Opret dig som bruger i dag
Det er gratis, og du binder dig ikke til noget.
Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.