[c#]转换响应可访问对象属性

发布时间: 2017/2/25 3:53:53
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我使用 HttpClient 从链接获取数据。

这里是我的回应︰

#S7Z OK
#Mon Dec 26 02:26:58 EST 2016
image.anchor=168,186
image.embeddedIccProfile=0
image.embeddedPhotoshopPaths=0
image.embeddedXmpData=0
image.expiration=-1.0
image.height=373
image.iccProfile=sRGB IEC61966-2.1
image.mask=1
image.photoshopPathnames=
image.pixTyp=RGB
image.printRes=72
image.resolution=34
image.thumbRes=17
image.thumbType=2
image.timeStamp=1481737849826
image.width=336

我想要转换此辅助性对象的响应。

这里是我 httpclient 工作︰

using (var client = getHttpClient())
{
    HttpResponseMessage response = await client.GetAsync(path);
    if (response.IsSuccessStatusCode)
    {
        //var imageData = await response.Content.ReadAsAsync<imageData>();
        //imageData.timeStamp
    }
    else
    {
        //TODO: Need to handle error scenario
    }
}

我已经添加了注释,以让你的想法想做什么。其实,我想要 image.timeStamp 从响应值。

谢谢你 !

解决方法 1:

你可以通过将响应存储在字典中,然后您可以访问任何委员如 var x= dic["timeStamp"]; ,你也可以通过转换扩展执行 dicdynamic object

编辑︰

Stream receiveStream = response.GetResponseStream ();
StreamReader readStream = new StreamReader (receiveStream, Encoding.UTF8);
var text = readStream.ReadToEnd();
// Split the content into chunks 
foreach(var ch in chunks)
{
        string[] kv = ch.Split('=');                
        dic.Add(kv[0], kv[1]);
}
官方微信
官方QQ群
31647020