InglésFrancésEspañol

Ad


icono de página de OnWorks

genxs: en línea en la nube

Ejecute genxs en el proveedor de alojamiento gratuito de OnWorks a través de Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS

Este es el comando genxs que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


genxs - Generador de serializador XML de Mono

SINOPSIS


generaciones archivo de configuración [carpeta de destino]

DESCRIPCIÓN


generaciones es una herramienta para generar escritores y lectores de serialización XML personalizados para clases.

archivo de configuración es un archivo de configuración que especifica varias informaciones, como el
clase para la que generar el lector y el escritor, el nombre y el espacio de nombres de las clases
para generar y una colección de ganchos para aplicar. Mediante el uso de ganchos es posible
personalizar el comportamiento del serializador sin necesidad de modificar el archivo generado, por lo que
puede regenerarlo de forma segura si se modifica la clase de origen.

carpeta de destino especifica la carpeta donde se generarán los archivos.

NOTA: Esta herramienta solo se ejecuta en el tiempo de ejecución Mono, ya que utiliza algunas clases internas que no
disponible en otros tiempos de ejecución.

CONFIGURACIÓN ARCHIVO FORMATO


El archivo de configuración es un documento xml basado en la siguiente gramática ("?" Significa
opcional, "*" 0 o más):


*
nombre ?
nombre ?
nombre ?
nombre ?
?
*

?
*




Un archivo de configuración puede tener varios elementos "serializadores", cada uno de los cuales especifica el
clase para la cual generar un serializador junto con varias opciones de generación. los
La clase de origen se especifica en los siguientes atributos:

* clase : nombre de la clase (incluido el espacio de nombres).

* asamblea : nombre del ensamblado. Puede incluir la ruta completa.

Las opciones de generación se especifican en elementos secundarios:

* lector : nombre de la clase lectora.

* sin lector : si es "verdadero", no genera una clase de lector.

* escritor : nombre de la clase de escritor.

* baseSerializador : nombre de la clase de serializador xml base. Este artículo es solo 2.0.

* implementación : nombre de la clase de implementación del serializador. Este artículo es solo 2.0.

* sin escritor : si es "verdadero", no genera una clase de escritor.

* espacio de nombres : espacio de nombres de las clases de lectores y escritores.

* generar como interno : si es "verdadero", genera clases como internas.

* salidaNombreArchivo : nombre del archivo generado.

* lector de ganchos : una lista de ganchos para aplicar al lector.

* escritorHooks : una lista de ganchos para aplicar al escritor.

ESPECIFICANDO MANOS


Usando ganchos puede personalizar el comportamiento de lectores y escritores. Una especificación de gancho
sigue esta gramática:


?
nombre ?
nombre *
nombre ?

código fuente ?
código fuente ?
código fuente ?


El atributo "tipo" especifica el contexto en el que se aplica el gancho. Puede ser uno de
el seguimiento:

* atributos : el gancho se aplica donde los atributos se serializan / deserializan.

* elementos : el gancho se aplica donde los elementos se serializan / deserializan.

* Atributo desconocido : el gancho se aplica cuando se procesan atributos desconocidos.

* elemento desconocido : se aplica el gancho donde se procesan elementos desconocidos.

* miembro : el gancho se aplica cuando un miembro se serializa / deserializa.

* tipo : se aplica gancho para todo el tipo.

El elemento "select" especifica las clases y miembros a los que se debe agregar el gancho.
Puede contener los siguientes elementos:

* escribe un nombre : se seleccionará la clase con ese nombre (debe incluir espacio de nombres)

* tipoAtributo : se seleccionarán todas las clases que tengan ese atributo aplicado
(especifique el nombre completo de la clase de atributo, incluido el espacio de nombres). Varios nombres de atributos
se puede especificar.

* tipoMiembro : nombre del miembro de la clase para el que se debe agregar el gancho.

El código fuente del gancho se puede especificar mediante cualquiera de los siguientes elementos:

* reemplazar : el código fuente proporcionado reemplazará todas las serializaciones / deserializaciones
operaciones en el contexto del gancho.

* insertarAntes : el código fuente se agregará antes del contexto del gancho.

* insertar después : el código fuente se agregará después del contexto del gancho.

Al escribir el código para un gancho, puede usar algunas variables especiales que están definidas
durante el proceso de generación de código. Las variables son las siguientes:

* $ TIPO: nombre de la clase que se genera, sin espacio de nombres.

* $ FULLTYPE: nombre completo de la clase que se está generando, incluido el espacio de nombres.

* $ OBJETO: el objeto que se serializa o deserializa. Cuando se usa un lector de reemplazo
gancho de tipo "tipo", el código de gancho debe asignar el objeto deserializado a este
variable.

* -I $ ELEMENT: nombre del elemento del objeto que se serializa / deserializa.

* $ NAMESPACE: espacio de nombres del elemento del objeto que se serializa / deserializa.

* $ MIEMBRO: nombre del miembro que se serializa / deserializa. Solo válido en el "miembro"
contexto.

GANCHO EJEMPLOS


El siguiente ejemplo agrega una llamada a un método Validate después de la deserialización de cualquier
:



System.Xml.Schema.XmlSchema.Validate $ TYPE ($ OBJECT);



Este ejemplo especifica el código que se utilizará para deserializar la clase XmlSchema:



System.Xml.Schema.XmlSchema


$ OBJECT = System.Xml.Schema.XmlSchema.Read (Lector, nulo);



Ese especifica el código que se utilizará para leer instancias de XmlSchema:



System.Xml.Schema.XmlSchema

$ OBJECT.Write (Escritor);


Con estos dos ganchos el serializador imprimirá alguna información al serializar la clase
"Mi clase":



MyNamespace.MyClass

Console.WriteLine ("Serializar MyClass");
Console.WriteLine ("MyClass serializado");



MyNamespace.MyClass


Console.WriteLine ("Miembro serializado $ MEMBER");



Este gancho escribe un elemento adicional para todos los tipos que tienen el atributo personalizado
"Mi atributo":



MyNamespace.MyAttribute


Writer.WriteStartElement ("datos privados");
Writer.WriteString ($ OBJECT.PrivateData);
Escritor.WriteEndElement ();



CONFIGURACIÓN ARCHIVO EJEMPLO


Este es el archivo de configuración utilizado para generar el serializador para ServiceDescription:



ServiceDescriptionReaderBase
ServiceDescriptionWriterBase
System.Web.Services.Description
ServiceDescriptionSerializerBase.cs



System.Web.Services.Configuration.XmlFormatExtensionPointAttribute

ServiceDescription.ReadExtension (Lector, $ OBJECT);



System.Xml.Schema.XmlSchema

$ OBJECT = System.Xml.Schema.XmlSchema.Read (Lector, nulo);





System.Web.Services.Configuration.XmlFormatExtensionPointAttribute

ServiceDescription.WriteExtensions (Writer, $ OBJECT);



System.Xml.Schema.XmlSchema

$ OBJECT.Write (Escritor);





AUTORES


Lluis Sánchez Gual ([email protected])

Use genxs en línea usando los servicios de onworks.net


Servidores y estaciones de trabajo gratuitos

Descargar aplicaciones de Windows y Linux

  • 1
    AstrOrzPlayer
    AstrOrzPlayer
    AstrOrz Player es un reproductor multimedia gratuito
    software, parte basado en WMP y VLC. los
    jugador tiene un estilo minimalista, con
    más de diez colores temáticos, y también puede
    b ...
    Descargar AstrOrzPlayer
  • 2
    movistartv
    movistartv
    Kodi Movistar+ TV es un ADDON para XBMC/
    Kodi que permite deshacerse de un
    decodificador de los servicios IPTV de
    Movistar integrado en uno de los
    mediacenters ma...
    descargar movistartv
  • 3
    Código :: Bloques
    Código :: Bloques
    Code::Blocks es un programa gratuito, de código abierto,
    IDE multiplataforma C, C++ y Fortran
    construido para satisfacer las necesidades más exigentes
    de sus usuarios. Está diseñado para ser muy
    extens ...
    Descargar Código::Bloques
  • 4
    En medio de
    En medio de
    Interfaz de Minecraft en medio o avanzada
    y el seguimiento de datos / estructura es una herramienta para
    mostrar una descripción general de un Minecraft
    mundo, sin realmente crearlo. Eso
    puede ...
    Descargar en medio
  • 5
    MSYS2
    MSYS2
    MSYS2 es una colección de herramientas y
    bibliotecas que le proporcionan una
    entorno fácil de usar para la construcción,
    instalar y ejecutar Windows nativo
    software. Con ...
    Descargar MSYS2
  • 6
    libjpeg-turbo
    libjpeg-turbo
    libjpeg-turbo es un códec de imagen JPEG
    que usa instrucciones SIMD (MMX, SSE2,
    NEON, AltiVec) para acelerar la línea de base
    Compresión y descompresión JPEG activadas
    x86, x8 ...
    Descargar libjpeg-turbo
  • Más "

Comandos de Linux

  • 1
    abi-rastreador
    abi-rastreador
    abi-tracker: visualiza los cambios de ABI
    Línea de tiempo de una biblioteca de software C/C++.
    DESCRIPCIÓN: NOMBRE: ABI Tracker
    (abi-tracker) Visualizar los cambios de ABI
    línea de tiempo de un C/C+...
    Ejecute abi-tracker
  • 2
    abicheck
    abicheck
    abicheck - comprobar los binarios de la aplicación
    para llamadas a símbolos privados o en evolución
    en bibliotecas y para enlaces estáticos de
    algunas bibliotecas del sistema. ...
    Ejecutar abicheck
  • 3
    mensajeromlm
    mensajeromlm
    couriermlm - La lista de correo de Courier
    gerente ...
    Ejecutar couriermlm
  • 4
    mensajeríacpd
    mensajeríacpd
    couriertcpd - el servidor de correo Courier
    Demonio del servidor TCP...
    Ejecutar couriertcpd
  • 5
    gbklátex
    gbklátex
    bg5latex - Usa LaTeX directamente en un Big5
    archivo de texto codificado bg5pdflatex - Uso
    pdfLaTeX directamente en un Big5 encodedtex
    archivo bg5+latex - Use LaTeX directamente en un
    5+ grandes...
    Ejecutar gbklatex
  • 6
    gbkpdflátex
    gbkpdflátex
    bg5latex - Usa LaTeX directamente en un Big5
    archivo de texto codificado bg5pdflatex - Uso
    pdfLaTeX directamente en un Big5 encodedtex
    archivo bg5+latex - Use LaTeX directamente en un
    5+ grandes...
    Ejecutar gbkpdflatex
  • Más "

Ad