.NET WebApi + DataTable

Baue ich ein .NET WebApi-Projekt. Einer meiner ApiControllers gibt eine datatable. Im JSON-format, es sieht alles gut aus, aber das XML-format enthält so viel junk-brauche ich nicht.

So, ich dachte, wir schreiben meiner eigenen XML-Serialisierung. Dafür habe ich eine neue Klasse, die die IXmlSerializable implementiert. Es sieht wie folgt aus:

public class MyDataTable : IXmlSerializable
{
    public MyDataTable(DataTable datatable)
    {
        this.Data = datatable;
    }


    public void WriteXml(XmlWriter writer)
    {

        writer.WriteStartElement("Test");
        writer.WriteElementString("T", "hello world");
        writer.WriteEndElement();
    }

    public XmlSchema GetSchema()
    {
        return null;
    }

    public void ReadXml(XmlReader reader)
    {
        throw new NotImplementedException();
    }

    public DataTable Data { get; set; }
}

Nun meine XML sieht toll aus, aber mein JSON nicht.
Das JSON sieht wie folgt aus:

{"Data":[{"id":1,"name":"John"},{"id":2,"name":"Julia"}]}

Was ich wirklich will, ist dies:

[{"id":1,"name":"John"},{"id":2,"name":"Julia"}]

Gibt es eine einfache Möglichkeit, entfernen Sie die "Data"-string der JSON-Ergebnis, ohne das umschreiben der ganzen Sache?
Oder gibt es eine bessere Lösung als diese?

InformationsquelleAutor JeanD | 2013-01-28
Schreibe einen Kommentar