SqlCommand.ExecuteXmlReaderAsync 方法

定義

啟始這個 SqlCommand 所描述之 Transact-SQL 陳述式或預存程序的非同步執行,並傳回結果做為 XmlReader 物件。

多載

ExecuteXmlReaderAsync()

非同步版本的 ExecuteXmlReader(),這個版本會將 CommandText 傳送至 Connection 並建置 XmlReader 物件。

例外狀況將經由傳回的 Task 物件回報。

ExecuteXmlReaderAsync(CancellationToken)

非同步版本的 ExecuteXmlReader(),這個版本會將 CommandText 傳送至 Connection 並建置 XmlReader 物件。

取消語彙基元可用於要求在命令逾時之前捨棄作業。 例外狀況將經由傳回的 Task 物件回報。

ExecuteXmlReaderAsync()

非同步版本的 ExecuteXmlReader(),這個版本會將 CommandText 傳送至 Connection 並建置 XmlReader 物件。

例外狀況將經由傳回的 Task 物件回報。

public:
 System::Threading::Tasks::Task<System::Xml::XmlReader ^> ^ ExecuteXmlReaderAsync();
public System.Threading.Tasks.Task<System.Xml.XmlReader> ExecuteXmlReaderAsync ();
member this.ExecuteXmlReaderAsync : unit -> System.Threading.Tasks.Task<System.Xml.XmlReader>
Public Function ExecuteXmlReaderAsync () As Task(Of XmlReader)

傳回

表示非同步作業的工作。

例外狀況

Value 設為 Stream 時,使用 BinaryVarBinary 以外的 SqlDbType。 如需串流的詳細資訊,請參閱 SqlClient 串流支援

-或-

SqlDbType當 設定為 TextReaderValue ,使用CharNCharNVarCharVarCharXml以外的 。

-或-

Value 設定為 XmlReader 時,使用 Xml 以外的 SqlDbType

在工作完成前,對同一個執行個體呼叫 ExecuteScalarAsync(CancellationToken) 不止一次。

-或-

在串流作業期間已關閉或卸除的 SqlConnection。 如需串流的詳細資訊,請參閱 SqlClient 串流支援

-或-

在連接字串中指定了 Context Connection=true

SQL Server 於執行命令文字時傳回錯誤。

-或-

串流作業期間發生逾時。 如需串流的詳細資訊,請參閱 SqlClient 串流支援

StreamXmlReaderTextReader 物件在串流作業期間發生錯誤。 如需串流的詳細資訊,請參閱 SqlClient 串流支援

StreamXmlReaderTextReader 物件在串流作業期間已關閉。 如需串流的詳細資訊,請參閱 SqlClient 串流支援

備註

這個方法傳回的 XmlReader 不支援非同步作業。

如需 .NET Framework Data Provider for SQL Server 非同步程式設計的詳細資訊,請參閱非同步程式設計

這個方法會儲存在工作中,它會傳回方法同步對應專案可以擲回的所有非使用狀況例外狀況。 如果例外狀況儲存在傳回的工作中,則會在等候工作時擲回該例外狀況。 使用狀況例外狀況,例如 ArgumentException ,仍會同步擲回。 如需預存的例外狀況,請參閱 所 ExecuteXmlReader() 擲回的例外狀況。

另請參閱

適用於

ExecuteXmlReaderAsync(CancellationToken)

非同步版本的 ExecuteXmlReader(),這個版本會將 CommandText 傳送至 Connection 並建置 XmlReader 物件。

取消語彙基元可用於要求在命令逾時之前捨棄作業。 例外狀況將經由傳回的 Task 物件回報。

public:
 System::Threading::Tasks::Task<System::Xml::XmlReader ^> ^ ExecuteXmlReaderAsync(System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.Task<System.Xml.XmlReader> ExecuteXmlReaderAsync (System.Threading.CancellationToken cancellationToken);
member this.ExecuteXmlReaderAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Xml.XmlReader>
Public Function ExecuteXmlReaderAsync (cancellationToken As CancellationToken) As Task(Of XmlReader)

參數

cancellationToken
CancellationToken

取消指令。

傳回

表示非同步作業的工作。

例外狀況

Value 設為 Stream 時,使用 BinaryVarBinary 以外的 SqlDbType。 如需串流的詳細資訊,請參閱 SqlClient 串流支援

-或-

SqlDbType當 設定為 TextReaderValue ,使用CharNCharNVarCharVarCharXml以外的 。

-或-

Value 設定為 XmlReader 時,使用 Xml 以外的 SqlDbType

在工作完成前,對同一個執行個體呼叫 ExecuteScalarAsync(CancellationToken) 不止一次。

-或-

在串流作業期間已關閉或卸除的 SqlConnection。 如需串流的詳細資訊,請參閱 SqlClient 串流支援

-或-

在連接字串中指定了 Context Connection=true

SQL Server 於執行命令文字時傳回錯誤。

-或-

串流作業期間發生逾時。 如需串流的詳細資訊,請參閱 SqlClient 串流支援

StreamXmlReaderTextReader 物件在串流作業期間發生錯誤。 如需串流的詳細資訊,請參閱 SqlClient 串流支援

StreamXmlReaderTextReader 物件在串流作業期間已關閉。 如需串流的詳細資訊,請參閱 SqlClient 串流支援

取消權杖已取消。 此例外狀況會儲存在傳回的工作中。

備註

這個方法傳回的 XmlReader 不支援非同步作業。

如需 .NET Framework Data Provider for SQL Server 非同步程式設計的詳細資訊,請參閱非同步程式設計

這個方法會儲存在工作中,它會傳回方法同步對應專案可以擲回的所有非使用狀況例外狀況。 如果例外狀況儲存在傳回的工作中,則會在等候工作時擲回該例外狀況。 使用狀況例外狀況,例如 ArgumentException ,仍會同步擲回。 如需預存的例外狀況,請參閱 所 ExecuteXmlReader() 擲回的例外狀況。

另請參閱

適用於