天天看点

修改了wince下的JSON类。

根据自己的需要,修改了CodeBetter.json类,修正了适应自己的显示。版本为2.0环境下用,所以对于简写的属性,是不能得到的。

public int Id

{

set;

get;

}

这样是得不到值的,写成

 private int  _AreaId;   //这里的红色标注很重要,在转换时需要用到

        public int AreaId

        {

            get { return _AreaId; }

            set { _AreaId = value; }

        }

在转换时需要注意:前缀加上(“_"),如果你的JSON类,没有加属性前缀的话。如:

                //string s = @"{""AreaId"":3,""AreaName"":""sss"",""AreaType"":0,""CreateDate"":""2013-10-16 11:56:09.307"",""IsSaveData"":""false"",""ParentId"":0}";

这种的JSON,在转换时就得加前缀了,

CodeBetter.Json.Converter.Deserialize<T>(s,"_");

这样就可以转换出来,测试了list<>这样的集合,互转没有问题。

解决的小问题是:上一个文章里提到的,如果JSON字符串里,有多实体里没用上的属性,就会报错,同之,实体有属性这个名称,但JSON字符串里没有,也会报错。

修改后:

http://download.csdn.net/detail/nihongyuan/6441857