.net json 反序列问题 在线等啊

liyunhusoso 2014-11-27 01:46:13
{“data”:[
{
"Account.ID": XXX,
"Account.Name": "XXXXX",
"Account.contactname": "XXXX",
"Account.QQ": "XXXXX"}] }
serialize.Deserialize<XXXX>反序列化
可是json中的名字有“.” 可是定义XXXX类属性字段的时候不能有"."求这个XXXX类中的字段怎么定义
...全文
257 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
smthgdin_020 2014-11-27
  • 打赏
  • 举报
回复
字段命名不规范。 不要用“.”这样可能会隐藏一些问题,比如说你这个json,还有资源什么的都不要用”.“。
Damon_Dong 2014-11-27
  • 打赏
  • 举报
回复
引用 楼主 liyunhusoso 的回复:
{“data”:[ { "Account.ID": XXX, "Account.Name": "XXXXX", "Account.contactname": "XXXX", "Account.QQ": "XXXXX"}] } serialize.Deserialize<XXXX>反序列化 可是json中的名字有“.” 可是定义XXXX类属性字段的时候不能有"."求这个XXXX类中的字段怎么定义
你这个东西必须要传递这样子的json字符串吗,你这样传输太不合理了,不过也不是不可以解决的,但是不建议你这样传输,你里面的Account可以封装成一个类嘛!这样json字符串相当于中间套了一层Account,而且看着也合理,如果你非要像你说的那样传输,可以这样做:

    [DataContract]
    class Test
    {
        [DataMember(Name = "Account.id")]
        public int Id { get; set; }
    }
liyunhusoso 2014-11-27
  • 打赏
  • 举报
回复
你这样替换会有问题的 如果value中原来有@的也会被替换的。你不用@ 可是用别的很偏的特殊字符也会有这个情况的。
by_封爱 版主 2014-11-27
  • 打赏
  • 举报
回复
笨啊... 在替换回来啊.. 你的对象不是model吗.. 里面的字段 比如

public string a
		{
			set{ _a=value;}
			get{return _a.replace("@",".");}
		}
liyunhusoso 2014-11-27
  • 打赏
  • 举报
回复
如果value值中也有 "." 不是以前被替换了吗?
by_封爱 版主 2014-11-27
  • 打赏
  • 举报
回复
替换字符串呢.... 反正结构已经固定了..把.替换成@撒的
liyunhusoso 2014-11-27
  • 打赏
  • 举报
回复
我知道这个,可是我现在想定义一个类结构 然后把这个json反序列化此转换成此类,可是json中的名称带“.”了 在类中定义属性名是不能加点跟json中的名字就不一样了 这样就不能反序列化了。求指教啊
ruoyan_o 2014-11-27
  • 打赏
  • 举报
回复
//JavaScriptSerializer类在System.Web.Extensions.dll中 JavaScriptSerializer serializer = new JavaScriptSerializer();
liyunhusoso 2014-11-27
  • 打赏
  • 举报
回复
自己顶一下,求解啊
liyunhusoso 2014-11-27
  • 打赏
  • 举报
回复
JavaScriptSerializer.Deserialize<XXXX>反序列化

111,092

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧