共用方式為


JsonSerializer.Serialize 方法

定義

多載

Serialize(Stream, Object, Type, JsonSerializerContext)

將所提供的值轉換為UTF-8編碼的JSON文字,並將它寫入 Stream

Serialize(Utf8JsonWriter, Object, Type, JsonSerializerContext)

將一個 JSON 值(包括物件或數位)寫入提供的寫入器。

Serialize(Utf8JsonWriter, Object, Type, JsonSerializerOptions)

將指定型別的 JSON 表示寫入所提供寫入器。

Serialize(Utf8JsonWriter, Object, JsonTypeInfo)

將一個 JSON 值(包括物件或數位)寫入提供的寫入器。

Serialize(Stream, Object, Type, JsonSerializerOptions)

將所提供的值轉換為UTF-8編碼的JSON文字,並將它寫入 Stream

Serialize(Object, Type, JsonSerializerOptions)

將指定型別的值轉換成 JSON 字串。

Serialize(Stream, Object, JsonTypeInfo)

將所提供的值轉換為UTF-8編碼的JSON文字,並將它寫入 Stream

Serialize(Object, JsonTypeInfo)

將提供的值轉換成 String

Serialize(Object, Type, JsonSerializerContext)

將提供的值轉換成 String

Serialize<TValue>(Utf8JsonWriter, TValue, JsonSerializerOptions)

將泛型型別參數所指定的型別 JSON 表示寫入所提供寫入器。

Serialize<TValue>(TValue, JsonSerializerOptions)

將泛型型別參數所指定的型別值轉換成 JSON 字串。

Serialize<TValue>(TValue, JsonTypeInfo<TValue>)

將提供的值轉換成 String

Serialize<TValue>(Stream, TValue, JsonSerializerOptions)

將所提供的值轉換為UTF-8編碼的JSON文字,並將它寫入 Stream

Serialize<TValue>(Stream, TValue, JsonTypeInfo<TValue>)

將所提供的值轉換為UTF-8編碼的JSON文字,並將它寫入 Stream

Serialize<TValue>(Utf8JsonWriter, TValue, JsonTypeInfo<TValue>)

將一個 JSON 值(包括物件或數位)寫入提供的寫入器。

Serialize(Stream, Object, Type, JsonSerializerContext)

來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs

將所提供的值轉換為UTF-8編碼的JSON文字,並將它寫入 Stream

public:
 static void Serialize(System::IO::Stream ^ utf8Json, System::Object ^ value, Type ^ inputType, System::Text::Json::Serialization::JsonSerializerContext ^ context);
public static void Serialize (System.IO.Stream utf8Json, object? value, Type inputType, System.Text.Json.Serialization.JsonSerializerContext context);
static member Serialize : System.IO.Stream * obj * Type * System.Text.Json.Serialization.JsonSerializerContext -> unit
Public Sub Serialize (utf8Json As Stream, value As Object, inputType As Type, context As JsonSerializerContext)

參數

utf8Json
Stream

要寫入的UTF-8 Stream

value
Object

要轉換的值。

inputType
Type

要轉換的 value 型別。

context
JsonSerializerContext

可串行化類型的元數據提供者。

例外狀況

inputTypevalue不相容。

utf8JsoninputTypecontextnull

inputType 或其可串行化成員沒有相容的 JsonConverter

適用於

Serialize(Utf8JsonWriter, Object, Type, JsonSerializerContext)

來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs

將一個 JSON 值(包括物件或數位)寫入提供的寫入器。

public:
 static void Serialize(System::Text::Json::Utf8JsonWriter ^ writer, System::Object ^ value, Type ^ inputType, System::Text::Json::Serialization::JsonSerializerContext ^ context);
public static void Serialize (System.Text.Json.Utf8JsonWriter writer, object? value, Type inputType, System.Text.Json.Serialization.JsonSerializerContext context);
static member Serialize : System.Text.Json.Utf8JsonWriter * obj * Type * System.Text.Json.Serialization.JsonSerializerContext -> unit
Public Sub Serialize (writer As Utf8JsonWriter, value As Object, inputType As Type, context As JsonSerializerContext)

參數

writer
Utf8JsonWriter

要寫入的 JSON 寫入器。

value
Object

要轉換和寫入的值。

inputType
Type

要轉換的 value 型別。

context
JsonSerializerContext

可串行化類型的元數據提供者。

例外狀況

inputTypevalue不相容。

writerinputTypenull

inputType 或其可串行化成員沒有相容的 JsonConverter

所提供 contextGetTypeInfo(Type) 方法會傳回要轉換之型別的 null

適用於

Serialize(Utf8JsonWriter, Object, Type, JsonSerializerOptions)

來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs

將指定型別的 JSON 表示寫入所提供寫入器。

public static void Serialize (System.Text.Json.Utf8JsonWriter writer, object? value, Type inputType, System.Text.Json.JsonSerializerOptions? options = default);
public static void Serialize (System.Text.Json.Utf8JsonWriter writer, object value, Type inputType, System.Text.Json.JsonSerializerOptions options = default);
static member Serialize : System.Text.Json.Utf8JsonWriter * obj * Type * System.Text.Json.JsonSerializerOptions -> unit
Public Shared Sub Serialize (writer As Utf8JsonWriter, value As Object, inputType As Type, Optional options As JsonSerializerOptions = Nothing)
Public Sub Serialize (writer As Utf8JsonWriter, value As Object, inputType As Type, Optional options As JsonSerializerOptions = Nothing)

參數

writer
Utf8JsonWriter

要寫入的 JSON 寫入器。

value
Object

要轉換和寫入的值。

inputType
Type

要轉換的 value 型別。

options
JsonSerializerOptions

控制串行化行為的選項。

例外狀況

inputTypevalue 不相容

writerinputTypenull

inputType 或其可串行化成員沒有相容的 JsonConverter

備註

用來建立 Utf8JsonWriter 實例的 JsonWriterOptions 在衝突時優先於 JsonSerializerOptions。 因此,寫入時會使用 JsonWriterOptions.IndentedJsonWriterOptions.SkipValidationJsonWriterOptions.Encoder

如需詳細資訊,請參閱 如何串行化和還原串行化 JSON

適用於

Serialize(Utf8JsonWriter, Object, JsonTypeInfo)

來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs

將一個 JSON 值(包括物件或數位)寫入提供的寫入器。

public:
 static void Serialize(System::Text::Json::Utf8JsonWriter ^ writer, System::Object ^ value, System::Text::Json::Serialization::Metadata::JsonTypeInfo ^ jsonTypeInfo);
public static void Serialize (System.Text.Json.Utf8JsonWriter writer, object? value, System.Text.Json.Serialization.Metadata.JsonTypeInfo jsonTypeInfo);
static member Serialize : System.Text.Json.Utf8JsonWriter * obj * System.Text.Json.Serialization.Metadata.JsonTypeInfo -> unit
Public Sub Serialize (writer As Utf8JsonWriter, value As Object, jsonTypeInfo As JsonTypeInfo)

參數

writer
Utf8JsonWriter

要寫入的寫入器。

value
Object

要轉換和寫入的值。

jsonTypeInfo
JsonTypeInfo

要轉換之型別的相關元數據。

例外狀況

writerjsonTypeInfonull

valuejsonTypeInfo的類型不相符。

適用於

Serialize(Stream, Object, Type, JsonSerializerOptions)

來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs

將所提供的值轉換為UTF-8編碼的JSON文字,並將它寫入 Stream

public static void Serialize (System.IO.Stream utf8Json, object? value, Type inputType, System.Text.Json.JsonSerializerOptions? options = default);
static member Serialize : System.IO.Stream * obj * Type * System.Text.Json.JsonSerializerOptions -> unit
Public Sub Serialize (utf8Json As Stream, value As Object, inputType As Type, Optional options As JsonSerializerOptions = Nothing)

參數

utf8Json
Stream

要寫入的UTF-8 Stream

value
Object

要轉換的值。

inputType
Type

要轉換的 value 型別。

options
JsonSerializerOptions

控制轉換行為的選項。

例外狀況

inputTypevalue不相容。

utf8JsoninputTypenull

inputType 或其可串行化成員沒有相容的 JsonConverter

適用於

Serialize(Object, Type, JsonSerializerOptions)

來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs

將指定型別的值轉換成 JSON 字串。

public static string Serialize (object? value, Type inputType, System.Text.Json.JsonSerializerOptions? options = default);
public static string Serialize (object value, Type inputType, System.Text.Json.JsonSerializerOptions options = default);
static member Serialize : obj * Type * System.Text.Json.JsonSerializerOptions -> string
Public Shared Function Serialize (value As Object, inputType As Type, Optional options As JsonSerializerOptions = Nothing) As String
Public Function Serialize (value As Object, inputType As Type, Optional options As JsonSerializerOptions = Nothing) As String

參數

value
Object

要轉換的值。

inputType
Type

要轉換的 value 型別。

options
JsonSerializerOptions

控制轉換行為的選項。

傳回

值的 JSON 字串表示。

例外狀況

inputTypevalue不相容。

inputType null

inputType 或其可串行化成員沒有相容的 JsonConverter

備註

使用 String 不像使用UTF-8編碼那麼有效率,因為實作在內部使用UTF-8。 請參閱 SerializeToUtf8Bytes(Object, Type, JsonSerializerOptions)SerializeAsync(Stream, Object, Type, JsonSerializerOptions, CancellationToken)

如需詳細資訊,請參閱 如何串行化和還原串行化 JSON

適用於

Serialize(Stream, Object, JsonTypeInfo)

來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs

將所提供的值轉換為UTF-8編碼的JSON文字,並將它寫入 Stream

public:
 static void Serialize(System::IO::Stream ^ utf8Json, System::Object ^ value, System::Text::Json::Serialization::Metadata::JsonTypeInfo ^ jsonTypeInfo);
public static void Serialize (System.IO.Stream utf8Json, object? value, System.Text.Json.Serialization.Metadata.JsonTypeInfo jsonTypeInfo);
static member Serialize : System.IO.Stream * obj * System.Text.Json.Serialization.Metadata.JsonTypeInfo -> unit
Public Sub Serialize (utf8Json As Stream, value As Object, jsonTypeInfo As JsonTypeInfo)

參數

utf8Json
Stream

要寫入的UTF-8 Stream

value
Object

要轉換的值。

jsonTypeInfo
JsonTypeInfo

要轉換之型別的相關元數據。

例外狀況

utf8Json null

valuejsonTypeInfo的類型不相符。

適用於

Serialize(Object, JsonTypeInfo)

來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs

將提供的值轉換成 String

public:
 static System::String ^ Serialize(System::Object ^ value, System::Text::Json::Serialization::Metadata::JsonTypeInfo ^ jsonTypeInfo);
public static string Serialize (object? value, System.Text.Json.Serialization.Metadata.JsonTypeInfo jsonTypeInfo);
static member Serialize : obj * System.Text.Json.Serialization.Metadata.JsonTypeInfo -> string
Public Function Serialize (value As Object, jsonTypeInfo As JsonTypeInfo) As String

參數

value
Object

要轉換的值。

jsonTypeInfo
JsonTypeInfo

要轉換之型別的相關元數據。

傳回

值的 String 表示法。

例外狀況

jsonTypeInfo null

valuejsonTypeInfo的類型不相符。

備註

使用 String 不像使用UTF-8編碼那麼有效率,因為實作在內部使用UTF-8。 請參閱 SerializeToUtf8Bytes(Object, JsonTypeInfo)SerializeAsync(Stream, Object, JsonTypeInfo, CancellationToken)

適用於

Serialize(Object, Type, JsonSerializerContext)

來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs

將提供的值轉換成 String

public:
 static System::String ^ Serialize(System::Object ^ value, Type ^ inputType, System::Text::Json::Serialization::JsonSerializerContext ^ context);
public static string Serialize (object? value, Type inputType, System.Text.Json.Serialization.JsonSerializerContext context);
static member Serialize : obj * Type * System.Text.Json.Serialization.JsonSerializerContext -> string
Public Function Serialize (value As Object, inputType As Type, context As JsonSerializerContext) As String

參數

value
Object

要轉換的值。

inputType
Type

要轉換的 value 型別。

context
JsonSerializerContext

可串行化類型的元數據提供者。

傳回

值的 String 表示法。

例外狀況

inputType 或其可串行化成員沒有相容的 JsonConverter

所提供 contextGetTypeInfo(Type) 方法會傳回要轉換之型別的 null

inputTypecontextnull

備註

使用 String 不像使用UTF-8編碼那麼有效率,因為實作在內部使用UTF-8。 請參閱 SerializeToUtf8Bytes(Object, Type, JsonSerializerContext)SerializeAsync(Stream, Object, Type, JsonSerializerContext, CancellationToken)

適用於

Serialize<TValue>(Utf8JsonWriter, TValue, JsonSerializerOptions)

來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs

將泛型型別參數所指定的型別 JSON 表示寫入所提供寫入器。

public static void Serialize<TValue> (System.Text.Json.Utf8JsonWriter writer, TValue value, System.Text.Json.JsonSerializerOptions? options = default);
public static void Serialize<TValue> (System.Text.Json.Utf8JsonWriter writer, TValue value, System.Text.Json.JsonSerializerOptions options = default);
static member Serialize : System.Text.Json.Utf8JsonWriter * 'Value * System.Text.Json.JsonSerializerOptions -> unit
Public Shared Sub Serialize(Of TValue) (writer As Utf8JsonWriter, value As TValue, Optional options As JsonSerializerOptions = Nothing)
Public Sub Serialize(Of TValue) (writer As Utf8JsonWriter, value As TValue, Optional options As JsonSerializerOptions = Nothing)

類型參數

TValue

要串行化之值的型別。

參數

writer
Utf8JsonWriter

要寫入的 JSON 寫入器。

value
TValue

要轉換和寫入的值。

options
JsonSerializerOptions

控制串行化行為的選項。

例外狀況

writer null

TValue 或其可串行化成員沒有相容的 JsonConverter

備註

用來建立 Utf8JsonWriter 實例的 JsonWriterOptions 在衝突時優先於 JsonSerializerOptions。 因此,寫入時會使用 JsonWriterOptions.IndentedJsonWriterOptions.SkipValidationJsonWriterOptions.Encoder

如需詳細資訊,請參閱 如何串行化和還原串行化 JSON

適用於

Serialize<TValue>(TValue, JsonSerializerOptions)

來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs

將泛型型別參數所指定的型別值轉換成 JSON 字串。

public static string Serialize<TValue> (TValue value, System.Text.Json.JsonSerializerOptions? options = default);
public static string Serialize<TValue> (TValue value, System.Text.Json.JsonSerializerOptions options = default);
static member Serialize : 'Value * System.Text.Json.JsonSerializerOptions -> string
Public Shared Function Serialize(Of TValue) (value As TValue, Optional options As JsonSerializerOptions = Nothing) As String
Public Function Serialize(Of TValue) (value As TValue, Optional options As JsonSerializerOptions = Nothing) As String

類型參數

TValue

要串行化之值的型別。

參數

value
TValue

要轉換的值。

options
JsonSerializerOptions

控制串行化行為的選項。

傳回

值的 JSON 字串表示。

例外狀況

TValue 或其可串行化成員沒有相容的 JsonConverter

備註

使用 String 不像使用UTF-8編碼那麼有效率,因為實作在內部使用UTF-8。 請參閱 SerializeToUtf8Bytes(Object, Type, JsonSerializerOptions)SerializeAsync(Stream, Object, Type, JsonSerializerOptions, CancellationToken)

如需詳細資訊,請參閱 如何串行化和還原串行化 JSON

適用於

Serialize<TValue>(TValue, JsonTypeInfo<TValue>)

來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs
來源:
JsonSerializer.Write.String.cs

將提供的值轉換成 String

public:
generic <typename TValue>
 static System::String ^ Serialize(TValue value, System::Text::Json::Serialization::Metadata::JsonTypeInfo<TValue> ^ jsonTypeInfo);
public static string Serialize<TValue> (TValue value, System.Text.Json.Serialization.Metadata.JsonTypeInfo<TValue> jsonTypeInfo);
static member Serialize : 'Value * System.Text.Json.Serialization.Metadata.JsonTypeInfo<'Value> -> string
Public Function Serialize(Of TValue) (value As TValue, jsonTypeInfo As JsonTypeInfo(Of TValue)) As String

類型參數

TValue

要串行化之值的型別。

參數

value
TValue

要轉換的值。

jsonTypeInfo
JsonTypeInfo<TValue>

要轉換之型別的相關元數據。

傳回

值的 String 表示法。

例外狀況

TValue 或其可串行化成員沒有相容的 JsonConverter

jsonTypeInfo null

備註

使用 String 不像使用UTF-8編碼那麼有效率,因為實作在內部使用UTF-8。 請參閱 SerializeToUtf8Bytes<TValue>(TValue, JsonTypeInfo<TValue>)SerializeAsync<TValue>(Stream, TValue, JsonTypeInfo<TValue>, CancellationToken)

適用於

Serialize<TValue>(Stream, TValue, JsonSerializerOptions)

來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs

將所提供的值轉換為UTF-8編碼的JSON文字,並將它寫入 Stream

public static void Serialize<TValue> (System.IO.Stream utf8Json, TValue value, System.Text.Json.JsonSerializerOptions? options = default);
static member Serialize : System.IO.Stream * 'Value * System.Text.Json.JsonSerializerOptions -> unit
Public Sub Serialize(Of TValue) (utf8Json As Stream, value As TValue, Optional options As JsonSerializerOptions = Nothing)

類型參數

TValue

要串行化之值的型別。

參數

utf8Json
Stream

要寫入的UTF-8 Stream

value
TValue

要轉換的值。

options
JsonSerializerOptions

控制轉換行為的選項。

例外狀況

utf8Json null

TValue 或其可串行化成員沒有相容的 JsonConverter

適用於

Serialize<TValue>(Stream, TValue, JsonTypeInfo<TValue>)

來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs
來源:
JsonSerializer.Write.Stream.cs

將所提供的值轉換為UTF-8編碼的JSON文字,並將它寫入 Stream

public:
generic <typename TValue>
 static void Serialize(System::IO::Stream ^ utf8Json, TValue value, System::Text::Json::Serialization::Metadata::JsonTypeInfo<TValue> ^ jsonTypeInfo);
public static void Serialize<TValue> (System.IO.Stream utf8Json, TValue value, System.Text.Json.Serialization.Metadata.JsonTypeInfo<TValue> jsonTypeInfo);
static member Serialize : System.IO.Stream * 'Value * System.Text.Json.Serialization.Metadata.JsonTypeInfo<'Value> -> unit
Public Sub Serialize(Of TValue) (utf8Json As Stream, value As TValue, jsonTypeInfo As JsonTypeInfo(Of TValue))

類型參數

TValue

要串行化之值的型別。

參數

utf8Json
Stream

要寫入的UTF-8 Stream

value
TValue

要轉換的值。

jsonTypeInfo
JsonTypeInfo<TValue>

要轉換之型別的相關元數據。

例外狀況

utf8Json null

TValue 或其可串行化成員沒有相容的 JsonConverter

適用於

Serialize<TValue>(Utf8JsonWriter, TValue, JsonTypeInfo<TValue>)

來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs
來源:
JsonSerializer.Write.Utf8JsonWriter.cs

將一個 JSON 值(包括物件或數位)寫入提供的寫入器。

public:
generic <typename TValue>
 static void Serialize(System::Text::Json::Utf8JsonWriter ^ writer, TValue value, System::Text::Json::Serialization::Metadata::JsonTypeInfo<TValue> ^ jsonTypeInfo);
public static void Serialize<TValue> (System.Text.Json.Utf8JsonWriter writer, TValue value, System.Text.Json.Serialization.Metadata.JsonTypeInfo<TValue> jsonTypeInfo);
static member Serialize : System.Text.Json.Utf8JsonWriter * 'Value * System.Text.Json.Serialization.Metadata.JsonTypeInfo<'Value> -> unit
Public Sub Serialize(Of TValue) (writer As Utf8JsonWriter, value As TValue, jsonTypeInfo As JsonTypeInfo(Of TValue))

類型參數

TValue

要串行化之值的型別。

參數

writer
Utf8JsonWriter

要寫入的寫入器。

value
TValue

要轉換和寫入的值。

jsonTypeInfo
JsonTypeInfo<TValue>

要轉換之型別的相關元數據。

例外狀況

writerjsonTypeInfonull

TValue 或其可串行化成員沒有相容的 JsonConverter

適用於