2016-02-09 7 views
7

Ich versuche, ein Verfahren zu schaffen, ein JSON-String mit einem Json Schema mit dieser Methode zu validieren: http://www.newtonsoft.com/json/help/html/JsonSchema.htmNewtonsoft.Json.Schema.JsonSchema ist veraltet?

Es sagt das Objekt veraltet ist und zu seinem eigenen Paket bewegt, so dass ich NuGet und installieren Sie das Paket (Newtonsoft.Json.dll und Newtonsoft.Json.Schema.dll sind Referenzen) und haben:

using Newtonsoft.Json.Schema; 
using Newtonsoft.Json.Linq; 

    public bool validateSchema(string _Json) 
    { 
     JsonSchema schema = JsonSchema.Parse(
         @"{ 
          'properties': { 
           [MySchemaHere] 
         } 
         "); 
     JObject jobject = JObject.Parse(_Json); 

     return jobject.IsValid(schema); 
    } 

Wie kann ich die veraltete Nachricht loswerden? Es klingt für mich so, als wäre der Code in das andere Paket/dll verschoben worden, wird aber auf dieselbe Weise aufgerufen/verwendet und ich verweise irgendwie auf den veralteten Code? Das scheint mir etwas Einfaches/Offensichtliches zu vermissen.

EDIT: Hier ist ein Bild, das helfen könnte.

http://i.imgur.com/PWwpGRx.png

Antwort

8

ich schließlich nur noch ein neues Projekt erstellt und kopiert Ich habe ihr Beispiel hinzugefügt und ich sehe meinen schmerzhaft offensichtlichen Fehler, mit dem ich gekämpft habe.

ich verwenden sollte:

JSchema

und nicht

JsonSchema

1

Sind Sie sicher, dass Sie diese dll haben? Ihr Problem scheint diese JSON Schema-Validierung des eigenen Paket, verschoben wurde hier weitere Informationen überprüfen:

http://www.newtonsoft.com/json/help/html/N_Newtonsoft_Json_Schema.htm

Hope this Hilfe

+0

ich meine Antwort nur bearbeitet ein Bild hinzuzufügen. Soweit ich das beurteilen kann, wird die DLL korrekt hinzugefügt, ja? –