[WebMethod(Description = "GetAddressTest")]
[return: XmlRoot(ElementName = "AddressTest")]
public string GetAddressTest(string memberNbr)
{
XNamespace defaultNamespace = XNamespace.Get("http://tempuri.org/Member.xsd");
XElement addressInfo = new XElement("AddressDetail");
IList<string> addressList = new List<string> { "101 state st", "201 exit st", "301 entrance st" };
var i = 0;
foreach (string item in addressList)
{
i++;
addressInfo.SetElementValue("Address", item[i]);
}
return addressInfo.ToString();
}
here's the output format i want:<?xml version="1.0" encoding="UTF-8"?>
<MemberSpansTest xmlns="http://www.w3.org/2001/XMLSchema-instance">
</MemberSpansTest>
<MemberSpansDetail>
<Address>101 state st</Address>
</MemberSpansDetail>
<MemberSpansDetail>
<Address>201 exit st</Address>
</MemberSpansDetail>
<MemberSpansDetail>
<Address>301 entrance st</Address>
</MemberSpansDetail>
</MemberSpansTest>
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Serialization;
namespace WpfApp3
{
public class ExpertsExchange_29178928
{
public ExpertsExchange_29178928()
{
// Create test data
var memberSpansTest = new MemberSpansTest();
memberSpansTest.MemberSpansDetail.Add(new MemberSpansDetail() { Address = "101 state st" });
memberSpansTest.MemberSpansDetail.Add(new MemberSpansDetail() { Address = "201 exit st" });
memberSpansTest.MemberSpansDetail.Add(new MemberSpansDetail() { Address = "301 entrance st" });
// Serialize data to XML
using (var ms = new MemoryStream())
using(var sw = new StreamWriter(ms))
{
var xs = new XmlSerializer(typeof(MemberSpansTest));
xs.Serialize(ms, memberSpansTest);
var xml = Encoding.UTF8.GetString(ms.ToArray());
}
}
// -------------------------------------------------------------------------------------------------
[Serializable]
public class MemberSpansTest
{
[XmlElement(ElementName = "MemberSpansDetail")]
public List<MemberSpansDetail> MemberSpansDetail { get; set; } = new List<MemberSpansDetail>();
}
[Serializable]
public class MemberSpansDetail
{
public string Address { get; set; }
}
}
}
<?xml version="1.0"?>
<MemberSpansTest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<MemberSpansDetail>
<Address>101 state st</Address>
</MemberSpansDetail>
<MemberSpansDetail>
<Address>201 exit st</Address>
</MemberSpansDetail>
<MemberSpansDetail>
<Address>301 entrance st</Address>
</MemberSpansDetail>
</MemberSpansTest>