Ich habe meinen WCF-Dienst, der Daten sowohl im XML- als auch im JSON-Format zurückgibt.Zurückgeben einer Liste <object> in WCF
Ein Functios muss eine Liste zurückgeben, weil ich nicht weiß, welche Klasse verwendet wird, um diese Liste zu füllen.
Also, ich habe meine Klasse:
public class WrapHome
{
public WrapHome() { }
private string p_TITOLO { get; set; }
public string TITOLO { get { return p_TITOLO.ToString(); } set { p_TITOLO = value; } }
private List<object> p_CHART { get; set; }
public List<object> CHART { get { return p_CHART; } set { p_CHART = value; } }
}
und meine WCF-Deklaration:
[OperationContract]
[WebGet(UriTemplate = "datiHome.xml?token={token}&p1={p1}&p2={p2}", ResponseFormat = WebMessageFormat.Xml)]
List<WrapHome> GetDatiHomeXML(string token, string p1, string p2);
Der Ausgang richtig eingestellt ist, aber, wenn sie es in XML konvertiert zurückzukehren (oder JSON), ruft es die Methode erneut auf und gibt schließlich den Fehler err_connection_reset aus.
Ich weiß, das Problem ist die Liste, denn wenn ich es kommentiere, funktioniert es. Wie kann ich meine Liste in meiner WCF-Ausgabe verwenden?
Wenn Sie weitere Informationen benötigen, fragen Sie mich ohne Probleme.
Sie können alle möglichen Arten enumarate, die schließlich in der Liste sein, nicht wahr? –
@rudolf_franek gut, ich denke ja, die möglichen Typen sind insgesamt 5 oder 6, also ja. Warum? –
Sie könnten einen Basistyp für Ihre Objekte definieren, die in List platziert werden sollen - dieses Objekt kann mit KnownTypeAttribute markiert werden - wobei alle Typen als Parameter aufgelistet werden. - oder die KnownTypes können auf der Ebene des Service/Contract –