【发布时间】:2016-09-15 00:01:44
【问题描述】:
我正在尝试重新创建一个 xml,其结果应如下所示:
<names>
<legalName behavior="replace">
<firstName>Value</firstName>
<surName>Value</surName>
<fullName>Value</fullName>
<effDate>Value</effDate>
</legalName>
</names>
我有一个如下所示的属性列表:
public class Names
{
[XmlElement("legalName")]
public LegalName LegalName { get; set; }
}
public class LegalName
{
[XmlElement("firstName")]
public string FirstName { get; set; }
[XmlElement("surName")]
public string SurName { get; set; }
[XmlElement("fullName")]
public string FullName { get; set; }
[XmlElement("effDate")]
public string EffDate { get; set; }
}
还有逻辑:
foreach (var people in model.Peoples)
{
exportResult.Persons.Person.Add(new Person
{
Names = new Names()
{
LegalName = new LegalName()
{
FirstName = people.LegalNameFirstName,
SurName = people.LegalNameSurName,
FullName = people.LegalNameFullName,
EffDate = people.LegalNameEffectiveDate
}
}
}
}
XmlSerializer xsSubmit = new XmlSerializer(typeof(ExportResult));
StringWriter sww = new Utf8StringWrite();
var xml = string.Empty; // Your XML
using (XmlWriter writer = XmlWriter.Create(sww, new XmlWriterSettings {Encoding = Encoding.UTF8}))
{
xsSubmit.Serialize(writer, exportResult);
xml = sww.ToString();
}
return xml;
我想知道如何创建这个元素:
<legalName behavior="replace">
我应该更改属性类中的 XmlElement 吗?类似于:
public class Names
{
[XmlElement("legalName"), XmlAttribute("behavior =\"replace\"")]
public LegalName LegalName { get; set; }
}
如何使用 behavior="replace" 创建 legalName 元素?
【问题讨论】: