Compartir a través de


XmlWriter.WriteValue Método

Definición

Escribe un solo valor con tipo simple.

Sobrecargas

WriteValue(Single)

Escribe un número de punto flotante de precisión sencilla.

WriteValue(Object)

Escribe el valor del objeto.

WriteValue(Int64)

Escribe un valor Int64.

WriteValue(Int32)

Escribe un valor Int32.

WriteValue(Double)

Escribe un valor Double.

WriteValue(String)

Escribe un valor String.

WriteValue(DateTimeOffset)

Escribe un valor DateTimeOffset.

WriteValue(DateTime)

Escribe un valor DateTime.

WriteValue(Boolean)

Escribe un valor Boolean.

WriteValue(Decimal)

Escribe un valor Decimal.

Comentarios

El WriteValue método acepta valores de tipo simple de Common Language Runtime (CLR), los convierte en representaciones de cadena según las reglas de conversión de tipos de datos del lenguaje de definición de esquemas XML (XSD) y las escribe mediante el WriteString método . Esto le permite canalizar valores de tipo simple con una sobrecarga mínima de análisis al pasar datos entre XPathDocumentobjetos , XmlReadery XmlWriter . Esta capacidad también es útil cuando se trabaja con tipos simples clR y una XmlWriter instancia de . Puede llamar al WriteValue método para escribir el valor con tipo en lugar de usar los métodos de la XmlConvert clase para convertir los datos con tipo en un valor de cadena antes de escribirlos.

Para las operaciones asincrónicas, convierta el valor devuelto de WriteValue en una cadena y use el WriteStringAsync método .

En la tabla siguiente se muestran los tipos de datos XSD predeterminados que corresponden a los tipos CLR.

Si el objeto CLR es un tipo de lista, como IEnumerable, IList o ICollection, se trata como una matriz del tipo de valor.

Tipo CLR Tipo de datos XSD predeterminado
System.Boolean xsd:boolean
System.Byte** xsd:integer
Matriz System.Byte xsd:base64Binary
System.Char** xsd:string
System.DateTime xsd:dateTime
System.Decimal xsd:decimal
System.Double xsd:double
System.Int16** xsd:integer
System.Int32 xsd:integer
System.Int64 xsd:integer
System.Single xsd:float
System.String xsd:string
System.IO.TextReader xsd:string
System.IO.BinaryReader xsd:base64Binary

**Estos tipos no son conformes a CLS. No tienen métodos correspondientes WriteValue .

Si se llama a WriteValue varias veces seguidas, los valores no se delimitan por un espacio. Debe llamar a WriteWhitespace entre las llamadas a WriteValue para insertar espacios en blanco.

WriteValue(Single)

Escribe un número de punto flotante de precisión sencilla.

public:
 virtual void WriteValue(float value);
public virtual void WriteValue (float value);
abstract member WriteValue : single -> unit
override this.WriteValue : single -> unit
Public Overridable Sub WriteValue (value As Single)

Parámetros

value
Single

El número de punto flotante de precisión sencilla que se va a escribir.

Excepciones

Se ha especificado un valor no válido.

Se llamó un método XmlWriter antes de que se termine una operación asincrónica anterior. En este caso, se genera InvalidOperationException con el mensaje “Ya hay una operación asincrónica en curso”.

Comentarios

Este método toma el objeto Common Language Runtime y convierte el valor de entrada en el tipo de salida deseado mediante las reglas de conversión de tipos de datos del lenguaje de definición de esquemas XML (XSD).

Cuando se llama al método WriteValue, XmlWriter convierte el valor en sus representaciones de cadena de acuerdo con las normas de tipos de datos del esquema XML (XSD) y lo escribe utilizando el método WriteString.

Si se llama a WriteValue varias veces seguidas, los valores no se delimitan por un espacio. Debe llamar a WriteWhitespace entre las llamadas a WriteValue para insertar espacios en blanco. Pase un tipo de matriz a la XmlWriter.WriteValue(Object) sobrecarga para escribir una matriz de valores distintos.

Si se llama a este método en una XmlWriter instancia que genera solo texto, el valor con tipo se serializa en texto.

Para las operaciones asincrónicas, convierta el valor devuelto de este método en una cadena y use el WriteStringAsync método .

Se aplica a

WriteValue(Object)

Escribe el valor del objeto.

public:
 virtual void WriteValue(System::Object ^ value);
public virtual void WriteValue (object value);
abstract member WriteValue : obj -> unit
override this.WriteValue : obj -> unit
Public Overridable Sub WriteValue (value As Object)

Parámetros

value
Object

Valor del objeto que se va a escribir.

Nota Con el lanzamiento de .NET Framework 3.5, este método acepta DateTimeOffset como parámetro.

Excepciones

Se ha especificado un valor no válido.

El valor de value es null.

El sistema de escritura está cerrado o en estado de error.

o bien

Se llamó un método XmlWriter antes de que se termine una operación asincrónica anterior. En este caso, se genera InvalidOperationException con el mensaje “Ya hay una operación asincrónica en curso”.

Comentarios

Este método toma el objeto de Common Language Runtime (CLR) y convierte el valor de entrada en el tipo de salida deseado mediante las reglas de conversión de tipos de datos del lenguaje de definición de esquemas XML (XSD).

Si el objeto CLR es un tipo de lista como IEnumerable, IListo ICollection, se trata como una matriz del tipo de valor. XmlWriter convierte el valor en sus representaciones de cadena según las reglas de tipo de datos del esquema XML (XSD) y la escribe mediante el WriteString método .

Si se llama a este método en una XmlWriter instancia que genera solo texto, el valor con tipo se serializa en texto.

Para las operaciones asincrónicas, convierta el valor devuelto de este método en una cadena y use el WriteStringAsync método .

Se aplica a

WriteValue(Int64)

Escribe un valor Int64.

public:
 virtual void WriteValue(long value);
public virtual void WriteValue (long value);
abstract member WriteValue : int64 -> unit
override this.WriteValue : int64 -> unit
Public Overridable Sub WriteValue (value As Long)

Parámetros

value
Int64

Valor Int64 que se va a escribir.

Excepciones

Se ha especificado un valor no válido.

Se llamó un método XmlWriter antes de que se termine una operación asincrónica anterior. En este caso, se genera InvalidOperationException con el mensaje “Ya hay una operación asincrónica en curso”.

Comentarios

Este método toma el objeto Common Language Runtime y convierte el valor de entrada en el tipo de salida deseado mediante las reglas de conversión de tipos de datos del lenguaje de definición de esquemas XML (XSD).

Cuando se llama al método WriteValue, XmlWriter convierte el valor en sus representaciones de cadena de acuerdo con las normas de tipos de datos del esquema XML (XSD) y lo escribe utilizando el método WriteString.

Si se llama a WriteValue varias veces seguidas, los valores no se delimitan por un espacio. Debe llamar a WriteWhitespace entre las llamadas a WriteValue para insertar espacios en blanco. Pase un tipo de matriz a la XmlWriter.WriteValue(Object) sobrecarga para escribir una matriz de valores distintos.

Si se llama a este método en una XmlWriter instancia que genera solo texto, el valor con tipo se serializa en texto.

Para las operaciones asincrónicas, convierta el valor devuelto de este método en una cadena y use el WriteStringAsync método .

Se aplica a

WriteValue(Int32)

Escribe un valor Int32.

public:
 virtual void WriteValue(int value);
public virtual void WriteValue (int value);
abstract member WriteValue : int -> unit
override this.WriteValue : int -> unit
Public Overridable Sub WriteValue (value As Integer)

Parámetros

value
Int32

Valor Int32 que se va a escribir.

Excepciones

Se ha especificado un valor no válido.

Se llamó un método XmlWriter antes de que se termine una operación asincrónica anterior. En este caso, se genera InvalidOperationException con el mensaje “Ya hay una operación asincrónica en curso”.

Comentarios

Este método toma el objeto Common Language Runtime y convierte el valor de entrada en el tipo de salida deseado mediante las reglas de conversión de tipos de datos del lenguaje de definición de esquemas XML (XSD).

Cuando se llama al método WriteValue, XmlWriter convierte el valor en sus representaciones de cadena de acuerdo con las normas de tipos de datos del esquema XML (XSD) y lo escribe utilizando el método WriteString.

Si se llama a WriteValue varias veces seguidas, los valores no se delimitan por un espacio. Debe llamar a WriteWhitespace entre las llamadas a WriteValue para insertar espacios en blanco. Pase un tipo de matriz a la XmlWriter.WriteValue(Object) sobrecarga para escribir una matriz de valores distintos.

Si se llama a este método en una XmlWriter instancia que genera solo texto, el valor con tipo se serializa en texto.

Para las operaciones asincrónicas, convierta el valor devuelto de este método en una cadena y use el WriteStringAsync método .

Se aplica a

WriteValue(Double)

Escribe un valor Double.

public:
 virtual void WriteValue(double value);
public virtual void WriteValue (double value);
abstract member WriteValue : double -> unit
override this.WriteValue : double -> unit
Public Overridable Sub WriteValue (value As Double)

Parámetros

value
Double

Valor Double que se va a escribir.

Excepciones

Se ha especificado un valor no válido.

Se llamó un método XmlWriter antes de que se termine una operación asincrónica anterior. En este caso, se genera InvalidOperationException con el mensaje “Ya hay una operación asincrónica en curso”.

Ejemplos

En el ejemplo siguiente se escribe un nodo de libro mediante datos con tipo.

Double price = 9.95;
DateTime date = new DateTime(2004, 5, 20);

using (XmlWriter writer = XmlWriter.Create("data.xml"))
{
    writer.WriteStartElement("book");
    writer.WriteStartAttribute("pub-date");
    writer.WriteValue(date);
    writer.WriteEndAttribute();

    writer.WriteStartElement("price");
    writer.WriteValue(price);
    writer.WriteEndElement();

    writer.WriteEndElement();
    writer.Flush();
}
Dim price As [Double] = 9.95
Dim [date] As New DateTime(2004, 5, 20)
        
Using writer As XmlWriter = XmlWriter.Create("data.xml")
  writer.WriteStartElement("book")
  writer.WriteStartAttribute("pub-date")
  writer.WriteValue([date])
  writer.WriteEndAttribute()
            
  writer.WriteStartElement("price")
  writer.WriteValue(price)
  writer.WriteEndElement()
            
  writer.WriteEndElement()
  writer.Flush()
End Using

Comentarios

Este método toma el objeto Common Language Runtime y convierte el valor de entrada en el tipo de salida deseado mediante las reglas de conversión de tipos de datos del lenguaje de definición de esquemas XML (XSD).

Cuando se llama al método WriteValue, XmlWriter convierte el valor en sus representaciones de cadena de acuerdo con las normas de tipos de datos del esquema XML (XSD) y lo escribe utilizando el método WriteString.

Si se llama a WriteValue varias veces seguidas, los valores no se delimitan por un espacio. Debe llamar a WriteWhitespace entre las llamadas a WriteValue para insertar espacios en blanco. Pase un tipo de matriz a la XmlWriter.WriteValue(Object) sobrecarga para escribir una matriz de valores distintos.

Si se llama a este método en una XmlWriter instancia que genera solo texto, el valor con tipo se serializa en texto.

Para las operaciones asincrónicas, convierta el valor devuelto de este método en una cadena y use el WriteStringAsync método .

Se aplica a

WriteValue(String)

Escribe un valor String.

public:
 virtual void WriteValue(System::String ^ value);
public virtual void WriteValue (string value);
public virtual void WriteValue (string? value);
abstract member WriteValue : string -> unit
override this.WriteValue : string -> unit
Public Overridable Sub WriteValue (value As String)

Parámetros

value
String

Valor String que se va a escribir.

Excepciones

Se ha especificado un valor no válido.

Se llamó un método XmlWriter antes de que se termine una operación asincrónica anterior. En este caso, se genera InvalidOperationException con el mensaje “Ya hay una operación asincrónica en curso”.

Comentarios

Este método toma el objeto Common Language Runtime y convierte el valor de entrada en el tipo de salida deseado mediante las reglas de conversión de tipos de datos del lenguaje de definición de esquemas XML (XSD).

Si se llama a WriteValue varias veces seguidas, los valores no se delimitan por un espacio. Debe llamar a WriteWhitespace entre las llamadas a WriteValue para insertar espacios en blanco. Pase un tipo de matriz a la XmlWriter.WriteValue(Object) sobrecarga para escribir una matriz de valores distintos.

Si se llama a este método en una XmlWriter instancia que genera solo texto, el valor con tipo se serializa en texto.

Para las operaciones asincrónicas, use el WriteStringAsync método .

Se aplica a

WriteValue(DateTimeOffset)

Escribe un valor DateTimeOffset.

public:
 virtual void WriteValue(DateTimeOffset value);
public virtual void WriteValue (DateTimeOffset value);
abstract member WriteValue : DateTimeOffset -> unit
override this.WriteValue : DateTimeOffset -> unit
Public Overridable Sub WriteValue (value As DateTimeOffset)

Parámetros

value
DateTimeOffset

Valor DateTimeOffset que se va a escribir.

Excepciones

Se llamó un método XmlWriter antes de que se termine una operación asincrónica anterior. En este caso, se genera InvalidOperationException con el mensaje “Ya hay una operación asincrónica en curso”.

Comentarios

Para las operaciones asincrónicas, convierta el valor devuelto de este método en una cadena y use el WriteStringAsync método .

Se aplica a

WriteValue(DateTime)

Escribe un valor DateTime.

public:
 virtual void WriteValue(DateTime value);
public virtual void WriteValue (DateTime value);
abstract member WriteValue : DateTime -> unit
override this.WriteValue : DateTime -> unit
Public Overridable Sub WriteValue (value As DateTime)

Parámetros

value
DateTime

Valor DateTime que se va a escribir.

Excepciones

Se ha especificado un valor no válido.

Se llamó un método XmlWriter antes de que se termine una operación asincrónica anterior. En este caso, se genera InvalidOperationException con el mensaje “Ya hay una operación asincrónica en curso”.

Ejemplos

En el ejemplo siguiente se escribe un nodo de libro mediante datos con tipo.

Double price = 9.95;
DateTime date = new DateTime(2004, 5, 20);

using (XmlWriter writer = XmlWriter.Create("data.xml"))
{
    writer.WriteStartElement("book");
    writer.WriteStartAttribute("pub-date");
    writer.WriteValue(date);
    writer.WriteEndAttribute();

    writer.WriteStartElement("price");
    writer.WriteValue(price);
    writer.WriteEndElement();

    writer.WriteEndElement();
    writer.Flush();
}
Dim price As [Double] = 9.95
Dim [date] As New DateTime(2004, 5, 20)
        
Using writer As XmlWriter = XmlWriter.Create("data.xml")
  writer.WriteStartElement("book")
  writer.WriteStartAttribute("pub-date")
  writer.WriteValue([date])
  writer.WriteEndAttribute()
            
  writer.WriteStartElement("price")
  writer.WriteValue(price)
  writer.WriteEndElement()
            
  writer.WriteEndElement()
  writer.Flush()
End Using

Comentarios

Este método toma el objeto Common Language Runtime y convierte el valor de entrada en el tipo de salida deseado mediante las reglas de conversión de tipos de datos del lenguaje de definición de esquemas XML (XSD).

Cuando se llama al método WriteValue, XmlWriter convierte el valor en sus representaciones de cadena de acuerdo con las normas de tipos de datos del esquema XML (XSD) y lo escribe utilizando el método WriteString.

Si se llama a WriteValue varias veces seguidas, los valores no se delimitan por un espacio. Debe llamar a WriteWhitespace entre las llamadas a WriteValue para insertar espacios en blanco. Pase un tipo de matriz a la XmlWriter.WriteValue(Object) sobrecarga para escribir una matriz de valores distintos.

Si se llama a este método en una XmlWriter instancia que genera solo texto, el valor con tipo se serializa en texto.

Para las operaciones asincrónicas, convierta el valor devuelto de este método en una cadena y use el WriteStringAsync método .

Se aplica a

WriteValue(Boolean)

Escribe un valor Boolean.

public:
 virtual void WriteValue(bool value);
public virtual void WriteValue (bool value);
abstract member WriteValue : bool -> unit
override this.WriteValue : bool -> unit
Public Overridable Sub WriteValue (value As Boolean)

Parámetros

value
Boolean

Valor Boolean que se va a escribir.

Excepciones

Se ha especificado un valor no válido.

Se llamó un método XmlWriter antes de que se termine una operación asincrónica anterior. En este caso, se genera InvalidOperationException con el mensaje “Ya hay una operación asincrónica en curso”.

Comentarios

Este método toma el objeto Common Language Runtime y convierte el valor de entrada en el tipo de salida deseado mediante las reglas de conversión de tipos de datos del lenguaje de definición de esquemas XML (XSD).

Cuando se llama al método WriteValue, XmlWriter convierte el valor en sus representaciones de cadena de acuerdo con las normas de tipos de datos del esquema XML (XSD) y lo escribe utilizando el método WriteString.

Si se llama a WriteValue varias veces seguidas, los valores no se delimitan por un espacio. Debe llamar a WriteWhitespace entre las llamadas a WriteValue para insertar espacios en blanco. Pase un tipo de matriz a la XmlWriter.WriteValue(Object) sobrecarga para escribir una matriz de valores distintos.

Si se llama a este método en una XmlWriter instancia que genera solo texto, el valor con tipo se serializa en texto.

Para las operaciones asincrónicas, convierta el valor devuelto de este método en una cadena y use el WriteStringAsync método .

Se aplica a

WriteValue(Decimal)

Escribe un valor Decimal.

public:
 virtual void WriteValue(System::Decimal value);
public virtual void WriteValue (decimal value);
abstract member WriteValue : decimal -> unit
override this.WriteValue : decimal -> unit
Public Overridable Sub WriteValue (value As Decimal)

Parámetros

value
Decimal

Valor Decimal que se va a escribir.

Excepciones

Se ha especificado un valor no válido.

Se llamó un método XmlWriter antes de que se termine una operación asincrónica anterior. En este caso, se genera InvalidOperationException con el mensaje “Ya hay una operación asincrónica en curso”.

Comentarios

Este método toma el objeto Common Language Runtime y convierte el valor de entrada en el tipo de salida deseado mediante las reglas de conversión de tipos de datos del lenguaje de definición de esquemas XML (XSD).

Cuando se llama al método WriteValue, XmlWriter convierte el valor en sus representaciones de cadena de acuerdo con las normas de tipos de datos del esquema XML (XSD) y lo escribe utilizando el método WriteString.

Si se llama a WriteValue varias veces seguidas, los valores no se delimitan por un espacio. Debe llamar a WriteWhitespace entre las llamadas a WriteValue para insertar espacios en blanco. Pase un tipo de matriz a la XmlWriter.WriteValue(Object) sobrecarga para escribir una matriz de valores distintos.

Si se llama a este método en una XmlWriter instancia que genera solo texto, el valor con tipo se serializa en texto.

Para las operaciones asincrónicas, convierta el valor devuelto de este método en una cadena y use el WriteStringAsync método .

Se aplica a