0
ich einen WCF-Dienst erstellen bin versucht, die mir ein XML-Dokument suchen so etwas wie diese zurückgeben kann:mehrere identische Elemente in der gleichen C# DTO
<alert>
<identifier>SecretID</identifier>
<info>
<valueName>Name1</valueName>
<value>Info1</value>
</info>
<info>
<valueName>Name2</valueName>
<value>Info2</value>
</info>
</alert>
Die DTO dieser Datei würde etwas aussehen dies:
[DataContract(Name = "alert", Namespace = "")]
public class Alert
{
[DataMember(Name = "identifier")]
public string identifier { get; set; }
[DataMember(Name = "info")]
public List<Info> Info { get; set; }
}
[DataContract(Name = "info", Namespace = "")]
public class Info
{
[DataMember(Name = "valueName")]
public string ValueName { get; set; }
[DataMember(Name = "value")]
public string Value { get; set; }
}
Allerdings, wenn ich mit dem folgenden Versuch:
var alert = new Alert()
{
Identifier = "SecretID",
Info = new List<Info>
{
new Info() {ValueName = "Name1", Value = "Info1"},
new Info() {ValueName = "Name2", Value = "Info2"},
}
}
erhalte ich:
<alert>
<identifier>SecretID</identifier>
<info>
<info xmlns="">
<valueName>Name1</valueName>
<value>Info1</value>
</info>
<info xmlns="">
<valueName>Name2</valueName>
<value>Info2</value>
</info>
</info>
</alert>
Ich brauche nicht den zusätzlichen <info>
Tag, und der Namespace xmlns=""
wäre schön, zu entfernt zu haben. Was soll ich tun, um es los zu werden?
Das sieht versprechend - was ist, wenn die '' KeyValuePair'' ein komplexer Typ (Klasse)? –