Das Format ist "name:namespace" (sämtliche Zeichen vor dem ersten Doppelpunkt bilden den Namen).The format is "name:namespace" (anything before the first colon is the name).Der Name oder der Namespace kann fehlen.Either the name or the namespace can be missing.Wenn kein Namespace angegeben wird, kann auch der Doppelpunkt weggelassen werden.If there is no namespace the colon can be omitted as well.

Enumerationen und JSONEnumerations and JSON

Enumerationsmemberwerte werden in JSON als Zahlen behandelt. Dies unterscheidet sich von ihrer Behandlung in Datenverträgen, in die sie als Membernamen eingefügt werden.Enumeration member values are treated as numbers in JSON, which is different from how they are treated in data contracts, where they are included as member names.Weitere Informationen finden Sie unterFor more information aboutder Datenvertrag behandelt, finden Sie unter Enumerationstypen in Datenverträgen. the data contract treatment, see Enumeration Types in Data Contracts.

Wird ASP.NET nicht verwendet, wird ein DateTime-Typ in JSON durch ein spezielles Zeichenfolgenformat dargestellt, das im Abschnitt "Weitere Informationen" in diesem Thema beschrieben wird.When not using ASP.NET, a DateTime type is represented in JSON as a string with a special format that is described in the Advanced Information section of this topic.

Wörterbücher stellen keine Möglichkeit dar, JSON-Daten direkt zu bearbeiten.Dictionaries are not a way to work directly with JSON.Wörterbuch<string, object > möglicherweise nicht mehr unterstützt in der gleichen Weise in WCFWCF wie erwartet funktioniert mit anderen JSON-Technologien.Dictionary<string,object> may not be supported in the same way in WCFWCF as expected from working with other JSON technologies.Wird beispielsweise in einem Wörterbuch "abc" dem Wert "xyz" und "def" dem Wert 42 zugeordnet, dann lautet die JSON-Darstellung nicht {"abc":"xyz","def":42}, sondern [{"Key":"abc","Value":"xyz"},{"Key":"def","Value":42}].For example, if "abc" is mapped to "xyz" and "def" is mapped to 42 in a dictionary, the JSON representation is not {"abc":"xyz","def":42} but is [{"Key":"abc","Value":"xyz"},{"Key":"def","Value":42}] instead.

Weitere DetailsAdditional Details

Reihenfolge der DatenmemberOrder of Data Members

Die Reihenfolge der Datenmember ist bei Verwendung von JSON nicht von Bedeutung.Order of data members is not important when using JSON.Insbesondere gilt: Auch wenn Order festgelegt wird, können die JSON-Daten immer noch in jeder beliebigen Reihenfolge deserialisiert werden.Specifically, even if Order is set, JSON data can still be deserialized in any order.

Weitere Informationen zur polymorphen Serialisierung und der Einschränkungen, die Sie bei der Verwendung beachten müssen, finden Sie im Abschnitt "Weitere Informationen" weiter unten in diesem Thema.For details of how polymorphic serialization works and a discussion of some of the limitations that must be respected when using it, see the Advanced Information section later in this topic.

DateTime-ÜbertragungsformatDateTime Wire Format

DateTime-Werte werden als JSON-Zeichenfolgen im Format "/Date(700000+0500)/" dargestellt, wobei die erste Zahl (700000 in dem angeführten Beispiel) die Anzahl der seit Mitternacht des 1. Januar 1970 in der GMT-Zeitzone verstrichenen Millisekunden (ohne Berücksichtigung der Sommerzeit) angibt.DateTime values appear as JSON strings in the form of "/Date(700000+0500)/", where the first number (700000 in the example provided) is the number of milliseconds in the GMT time zone, regular (non-daylight savings) time since midnight, January 1, 1970.Die Zahl kann negativ sein und gibt dann einen früheren Zeitpunkt an.The number may be negative to represent earlier times.Der im Beispiel als "+0500" angegebene Teil ist optional und legt fest, dass die Zeitangabe als Local zu verstehen ist, also bei der Deserialisierung in eine lokale Zeitzone konvertiert werden muss.The part that consists of "+0500" in the example is optional and indicates that the time is of the Local kind - that is, should be converted to the local time zone on deserialization.Fehlt dieser Teil, wird die Zeitangabe als Utc deserialisiert.If it is absent, the time is deserialized as Utc.Die tatsächliche Zahl ("0500" in diesem Beispiel) und ihr Vorzeichen (+ oder -) werden ignoriert.The actual number ("0500" in this example) and its sign (+ or -) are ignored.

Position des Typhinweises in JSON-ObjektenType Hint Position in JSON Objects

Beachten Sie, dass in der JSON-Darstellung der Typhinweis das erste Element sein muss.Note that the type hint must appear first in the JSON representation.Dies ist der einzige Fall, wo die Reihenfolge von Schlüssel/Wert-Paaren bei der JSON-Verarbeitung wichtig ist.This is the only case where order of key/value pairs is important in JSON processing.Folgendes ist beispielsweise keine gültige Angabe des Typhinweises.For example, the following is not a valid way to specify the type hint.

Shapemuss in der Liste bekannter Typen enthalten sein.Shape must be in the Known Types list.Mit List<T> des Typs Shape in bekannten Typen hat keine Wirkung.Having List<T> of type Shape in known types has no effect.Beachten Sie, dass Sie nicht hinzuzufügende Shape bekannten Typen bei der Serialisierung in diesem Fall – dies erfolgt automatisch.Note that you do not have to add Shape to known types on serialization in this case - this is done automatically.