首页 新闻 搜索 专区 学院

json对象序列化疑问

0
悬赏园豆:20 [已解决问题] 解决于 2008-12-19 11:53

在System.Web.Extensions 版本1.0.61025.0下,要把datatable和datarow转换成JSON对象,可以采用Microsoft.Web.Preview dll。在web.config可以配置如下:

    <system.web.extensions>
        <scripting>
            <webServices>
                <jsonSerialization maxJsonLength="2000000">
                   <converters>
                   <add name="DataSetConverter"   type="Microsoft.Web.Preview.Script.Serialization.Converters.DataSetConverter, Microsoft.Web.Preview, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
              <add name="DataRowConverter" type="Microsoft.Web.Preview.Script.Serialization.Converters.DataRowConverter, Microsoft.Web.Preview, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
             <add name="DataTableConverter" type="Microsoft.Web.Preview.Script.Serialization.Converters.DataTableConverter, Microsoft.Web.Preview, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
             </converters>
             </jsonSerialization>
            </webServices>
            <scriptResourceHandler enableCompression="true" enableCaching="true"/>
        </scripting>
   </system.web.extensions>

在升级System.Web.Extensions 版本到3.5.0.0的dll时候,好像没有对应得Microsoft.Web.Preview dll进行转换。该如何在System.Web.Extensions3.5.0.0版本下进行

DataSet,datarow,datatable 序列化。欢迎大家讨论下,谢谢大家。

问题补充: 在.NET3.5框架下,WebService中序列化datatable对象。序列化后的数据中出现多了个“d”属性。{"d":"{\"__type\":\"SFCity.Entities.CBS_Employee, SFCity.Entities, Version=3.2.13.7, Culture=neutral, PublicKeyToken=null\",\"ID\":\"0bf732c7-d8c2-4955-9262-d3c87fad61b1\",\"FEmployeeID\":\"00002\",\"FName\":\"小李\",\"FBranch\":\"AJ\",\"FStation\":\"业务员\",\"FDuty\":\"部门经理\",\"FPlace\":\"福州\",\"FEmail\":\"\",\"FProvince\":\"14:::湖北省\",\"FCity\":\"161:::武汉\",\"FAddress\":\"hhhhhh\"}"}.在.net2.0时,WebService中序列化datatable对象。序列化后的数据为:"{\"__type\":\"SFCity.Entities.CBS_Employee, SFCity.Entities, Version=3.2.13.7, Culture=neutral, PublicKeyToken=null\",\"ID\":\"0bf732c7-d8c2-4955-9262-d3c87fad61b1\",\"FEmployeeID\":\"00002\",\"FName\":\"小李\",\"FBranch\":\"AJ\",\"FStation\":\"业务员\",\"FDuty\":\"部门经理\",\"FPlace\":\"福州\",\"FEmail\":\"\",\"FProvince\":\"14:::湖北省\",\"FCity\":\"161:::武汉\",\"FAddress\":\"hhhhhh\"}" 我在web.config配置如下: <system.web.extensions> <scripting> <webServices> <authenticationService enabled="true"></authenticationService> <!-- Uncomment this line to customize maxJsonLength and add a custom converter --> <jsonSerialization maxJsonLength="2000000"> <converters> <add name="DataTableConverter" type="Ext.Converters.DataTableConverter,Ext"/> </converters> </jsonSerialization> <!-- Uncomment this line to enable the authentication servi
seeker的主页 seeker | 初学一级 | 园豆:5
提问于:2008-12-16 20:12
< >
分享
最佳答案
0
要有好的心情 | 小虾三级 |园豆:502 | 2008-12-16 21:24
其他回答(1)
0

Microsoft.Web.Preview dll好像只是一个过度的东西,后来好像微软就不提供支持了!其实到了3.5你可以继续使用Microsoft.Web.Preview dll啊,只是一个程序集的问题!直接把它引用过来就行了!

GUO Xingwang | 园豆:3885 (老鸟四级) | 2008-12-16 20:39
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册