如何在ASP.NET MVC中将动态对象解析为用户定义的对象 [英] How can parse dynamic object into user defined object in ASP.NET MVC

查看:62
本文介绍了如何在ASP.NET MVC中将动态对象解析为用户定义的对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个动态对象我想改变成用户定义的对象如何序列化

这是控制器代码我怎么能改变

I have a one dynamic object i want to change into user defined object how i can Serialize
this is controller code how i can change

dynamic me = fb.Get("me?fields=first_name,middle_name,last_name,id,email");
         string email = me.email;
         string firstname = me.first_name;
         string middlename = me.middle_name;
         string lastname = me.last_name;



我希望动态对象进入用户定义我如何转换我正在尝试这样的



我尝试过:




and i want to dynamic object into user defined how i convert i am trying like that

What I have tried:

var jsonData = JsonConvert.SerializeObject(me);
                        var dc = JsonConvert.DeserializeObject<User>(jsonData);
                        Session["User"] = dc;



我收到这样的错误


and i am getting Error like this

Quote:

Message =无法将字符串转换为整数:1404663032928561。路径'id',第1行,第66位。

Message = "Could not convert string to integer: 1404663032928561. Path 'id', line 1, position 66."

推荐答案

您显然已在用户类中声明了 id 属性 int ,但API返回的值太大而无法容纳。



(已签名) 32位整数只能存储最大 2147483647 的值,这远小于 1404663032928561 。)



将属性更改为字符串
You've obviously declared your id property on your User class as an int, but the values returned from the API are too large to fit.

(A signed 32-bit integer can only store values up to 2147483647, which is significantly smaller than 1404663032928561.)

Change the property to be a string instead.


这篇关于如何在ASP.NET MVC中将动态对象解析为用户定义的对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆