Mam końcowy WCF, który jest jak takie:POST JSON słownik bez klucz/wartość Tekst
[OperationContract]
[WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.WrappedRequest, ResponseFormat = WebMessageFormat.Json, UriTemplate = "")]
Stream DoWork(Dictionary<string, string> items);
w celu przekazania niczego do mojego usługi, muszę uporządkować moje JSON jak takie:
{"items":[{"Key":"random1","Value":"value1"}, {"Key":"random2","Value":"value2"}]}
Co tak naprawdę ma to wyglądać to tak:
{"items":{"random1":"value1","random2":"value2"}}
Czy istnieje jakiś sposób, aby osiągnąć ten cel?
Sprawdź –
Christie
@NewBeeee - To nie jest łatwe. Chcesz ustawić [DataContractJsonSerializerSettings.UseSimpleDictionaryFormat] (https://msdn.microsoft.com/en-us/library/system.runtime.serialization.json.datacontractjsonserializer.useimpled dictionaryformat.aspx), ale nigdy nie zostanie ujawniony, więc będziesz potrzebować aby zastąpić cały serializer. Zobacz https://stackoverflow.com/questions/6792785 lub https://stackoverflow.com/questions/11003016. Prawdopodobnie będzie również wymagane https://stackoverflow.com/questions/33554997. – dbc
@NewBeeee - W rzeczywistości myślę, że https://stackoverflow.com/questions/6792785/replace-wcf-default-json-serialization jest duplikatem. – dbc