私は私の質問を編集していた:WCFデシリアライズJSON文字列
は、どのように私はJSON文字列は以下を示しデシリアライズすることができます
"{\"acctId\": \"Test10001\",\"amount\": 200,\"currency\": \"USD\",\"Code\": \"Test\",\"serialNo\": \"1234566789asdsad0\"}"
私は、このメソッドまたは他のを使用してデータを取得する方法の提案を教えてください推奨される方法。
私は私の質問を編集していた:WCFデシリアライズJSON文字列
は、どのように私はJSON文字列は以下を示しデシリアライズすることができます
"{\"acctId\": \"Test10001\",\"amount\": 200,\"currency\": \"USD\",\"Code\": \"Test\",\"serialNo\": \"1234566789asdsad0\"}"
私は、このメソッドまたは他のを使用してデータを取得する方法の提案を教えてください推奨される方法。
私はあなたの目的を果たす必要があるコードの下だと思う:Json.NETまたはRestsharpなどの
public class DeserializedData
{
public string acctId { get; set; }
public string amount { get; set; }
public string currency { get; set; }
public string Code { get; set; }
public string serialNo { get; set; }
}
StreamReader reader = new StreamReader(streamdata);
string res = reader.ReadToEnd();
使用サードパーティのDLLを:
var result = JsonConvert.DeserializeObject<DeserializedData>(res);
Json.Net Json.NETを使用して
1) 2.)Restsharpを使用するRestsharp
var jsonDeserializer = new RestSharp.Deserializers.JsonDeserializer();
var response = jsonDeserializer.Deserialize<DeserializedData>(res);
あなたのために働かないかどうか教えてください。
StreamWriter
を下記のように使用することをお勧めします。 この機能を使用してストリームをあなたの文字列を渡すと戻りあなたのコンテンツたいJSONを与えるであろう
public static Stream GenerateStreamFromString(string s)
{
MemoryStream stream = new MemoryStream();
StreamWriter writer = new StreamWriter(stream);
writer.Write(s);
writer.Flush();
stream.Position = 0;
return stream;
}
それを解析します(例えば、Json.NET)。
JsonConvert.DeserializeObject<YourRequestObject>(res)
あなたはこの
dynamic stuff = JObject.Parse(res.ToString());
string acctId= stuff.acctId;
のようなJSON文字列を読み取ることができます。しかし、あなたがパースされ、応答文字列がフォーマットJSONする必要があります。そして、あなたのような何かを書くだろう。
あなたのフル機能を公開 – Aravind
'res'はJSON文字列です。したがって、ここでは 'HttpUtility.ParseQueryString(res);'の使い方が間違っています。 'JSON.NET'のようなJSONシリアライザを使って' res'を非直列化します – AEonAX
他のライブラリを使わずに逆直列化する方法があるのならば? –