Оказывается, ответ был довольно прост.
[XmlSerializerFormat]
[OperationContract]
[WebGet(UriTemplate = "format/{format}/userid/{userid}/sessionkey/{sessionkey}")]
string Get(string format,string userid,string sessionkey);
DataContractSerializer является сериализатором по умолчанию, а [XmlSerializerFormat]
переопределяет сериализацию.
В моих классах я добавил атрибуты сериализации:
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
namespace Myapp
{
[XmlRoot("people")]
public class People
{
private string strUserID = "";
private List<Group> lstGroup;
public People()
{
lstGroup = new List<Group>();
}
[XmlAttribute("userID")]
public string UserID
{
get { return strUserID; }
set { strUserID = value; }
}
[XmlElement("group")]
public List<Group> Group
{
get { return lstGroup; }
set { lstGroup = value; }
}
}
}
Хотя я доволен краткосрочным усилением, я буду углубляться в это, чтобы сохранить контроль над выходом.
Спасибо
P