vb.net – JSON.Net VB反序列化无法正常工作
我是VB的新手,并试图编写一个导出和导入
JSON的Web服务.
我正在使用JSON.NET 3.5并且可以序列化很好: 我的令牌课程是: <DataContract()> _ Public Class Token <DataMember()> _ Public TokenID As String <DataMember()> _ Public Issued As Date <DataMember()> _ Public Expires As Date <DataMember()> _ Public UserName As String <DataMember()> _ Public CompanyID As String <DataMember()> _ Public ApplicationID As Double <DataMember()> _ Public UserID As Double <DataMember()> _ Public DeviceID As Double <DataMember()> _ Public DeviceSerialNumber As String <DataMember()> _ Public IsValid As Boolean <DataMember()> _ Public DebugText As String (我从MS的序列化开始,但我想我会尝试JSON.NET) 我序列化: Dim ThisToken作为新令牌 JSONString = Newtonsoft.Json.JsonConvert.SerializeObject(ThisToken) 我从Web服务获得此输出: {“TokenID”:“9eaae348-5cbd-46ac-8ba9-83720ac07740”,“Issued”:“/ Date(1300422761886 0800)/”,“Expires”:“/ Date(1300465961886 0800)/”,“UserName”:“ 1234”,“CompanyID”: “6”,“的applicationID”:1.0,“用户ID”:29.0,“的DeviceID”:1.0 “DeviceSerialNumber”: “9149520800758”,“的IsValid”:真 “DebugText”: “”} 到目前为止,我认为这么好. 为了测试反序列化是否有效,我想我会尝试反序列化我刚刚序列化的内容.所以我创建了一个接受字符串的web服务,并将上面的内容粘贴到其中. deseralise的代码是: Dim ThisToken As New Token ThisToken = Newtonsoft.Json.JsonConvert.DeserializeObject(JSonString) 当我使用VS2005内部调试/ IE测试运行代码时,我得到一个http500内部服务器错误. 如果我在序列化后立即尝试反序列化,我也会遇到同样的问题. 我认为部分问题是我所遵循的代码是c#;来自json.net页面: Product deserializedProduct = JsonConvert.DeserializeObject<Product>(json); 我可以看到在c#中有一个< Product>在vb中不容易指出的部分? 我毫不怀疑newtonsoft json.net产品运行良好;我确信我做的不对. 救命 ? 安德鲁 解决方法
VB相当于
Product deserializedProduct = JsonConvert.DeserializeObject<Product>(json); 是 Dim deserializedProduct as Product = JsonConvert.DeserializeObject(Of Product)(Json) 所以我想你想要 Dim ThisToken as Token = Newtonsoft.Json.JsonConvert.DeserializeObject(Of Token)(JSonString) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |