JSON.Net VB désérialiser ne fonctionne pas

Je suis nouveau sur VB et en essayant d'écrire un webservice que les exportations et les importations JSON.

Je suis en utilisant JSON.NET 3.5 et peut sérialiser amende:

Mon Jeton de classe est:

<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

(J'ai commencé avec les états membres, la sérialisation, mais pensé que je pourrais essayer JSON.NET)

Je sérialiser avec:

Dim ThisToken comme Nouveau Jeton
ThisToken.DebugText = "bla"
et ainsi de suite

    JSONString = Newtonsoft.Json.JsonConvert.SerializeObject(ThisToken)

Et je reçois cette sortie du webservice:

{"TokenID":"9eaae348-5cbd-46ac-8ba9-83720ac07740","Issued":"/Date(1300422761886+0800)/","Expires":"/Date(1300465961886+0800)/","UserName":"1234","CompanyID":"6","ApplicationID":1.0,"UserID":29.0,"DeviceID":1.0,"DeviceSerialNumber":"9149520800758","IsValid":true,"DebugText":""}

C'est très bien je pense.

Pour tester que la désérialisation est le travail, je pensais que je voudrais essayer et deserialise ce que je viens de sérialisés. J'ai donc créer un webservice qui accepte une chaîne et je colle ci-dessus.

code de deseralise est:

    Dim ThisToken As New Token

    ThisToken = Newtonsoft.Json.JsonConvert.DeserializeObject(JSonString)

Lorsque j'exécute le code à l'aide de VS2005 interne debug/IE test, j'obtiens une http500 erreur interne du serveur.

J'ai également le même problème si j'essaie de désérialiser immédiatement après la sérialisation.

Je pense qu'une partie du problème est que le code que j'ai été la suite a été c#; à partir de la json.net page:

Product deserializedProduct = JsonConvert.DeserializeObject<Product>(json);

Je peux voir qu'en c# il y a un <Product> partie qui n'est pas immédiatement apparente dans vb ?

Je n'ai aucun doute que le newtonsoft json.net le produit fonctionne très bien; je suis sûr que je ne vais pas faire quelque chose de bien.

Aider ?

Andrew

OriginalL'auteur andrew | 2011-03-18