Come passare un elenco di tipi complessi in ServiceStack? Ad esempio, il mio DTO richiesta è simile al seguente:Come passare un elenco di tipi complessi nella stringa di query?
//Request DTO
public class Test
{
public IList<Fund> Funds { get; set; }
}
public class Fund
{
public string Key { get; set; }
public int Percent { get; set; }
}
Come posso passare l'oggetto serializzato tramite HTTP get?
http://localhost:49490/api/funds={ ?? }
KeyValueDataContractDeserializer: Errore durante la conversione di digitare: definizioni tipo dovrebbero iniziare con un '{', aspettandosi di tipo 'Fondo' serializzato, ha ottenuto stringa che inizia con: asdf
Grazie, funziona perferct! Cosa intendi esattamente con "Le interfacce su DTO sono generalmente una cattiva idea"? Come passeresti/progetterai in questo caso? –
Prenderei I in uscita da IList, ovvero Lista. Se non si forniscono tipi concreti rispetto ai pochi serializzatori che effettivamente supportano le interfacce devono emettere informazioni di tipo dinamico sul cavo, inutilmente gonfiando il payload e accoppiando il formato al impl serializzatore. Non ci sono buoni motivi validi per avere interfacce su DTO. – mythz