EnglezăFrancezăSpaniolă

Ad


Favicon OnWorks

genxs - Online în cloud

Rulați genxs în furnizorul de găzduire gratuit OnWorks prin Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS

Aceasta este comanda genxs care poate fi rulată în furnizorul de găzduire gratuit OnWorks folosind una dintre multiplele noastre stații de lucru online gratuite, cum ar fi Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS

PROGRAM:

NUME


genxs - Generatorul de serializator Xml al lui Mono

REZUMAT


genxs configurationFile [destinationFolder]

DESCRIERE


genxs este un instrument pentru generarea de scriitori și cititori de serializare XML personalizat pentru clase.

Fișier de configurare este fișierul de configurare care specifică mai multe informații, cum ar fi
clasa pentru care să genereze cititorul și scriitorul, numele și spațiul de nume ale claselor
pentru a genera și o colecție de cârlige de aplicat. Prin utilizarea cârligelor este posibil să
personalizați comportamentul serializatorului fără a fi nevoie să modificați fișierul generat, deci
îl puteți regenera în siguranță dacă clasa sursă este modificată.

dosar de destinație specifică folderul în care vor fi generate fișierele.

NOTĂ: Acest instrument rulează numai în timpul de execuție Mono, deoarece folosește unele clase interne, nu
disponibil în alte perioade de execuție.

CONFIGURARE FILE FORMAT


Fișierul de configurare este un document xml bazat pe următoarea gramatică ("?" înseamnă
opțional, „*” 0 sau mai mult):


*
Nume ?
Nume ?
Nume ?
Nume ?
?
*

?
*




Un fișier de configurare poate avea mai multe elemente „serializatoare”, fiecare dintre ele specificând
clasă pentru care să genereze un serializator împreună cu mai multe opțiuni de generare. The
clasa sursă este specificată în următoarele atribute:

* clasă : numele clasei (inclusiv namespace).

* asamblare : denumirea ansamblului. Poate include calea completă.

Opțiunile de generare sunt specificate în elementele copil:

* cititor : numele clasei de cititor.

* noReader : dacă „adevărat”, nu generează clasa de cititor.

* scriitor : numele clasei de scriitori.

* bazăSerializator : numele clasei de serializare xml de bază. Acest articol este doar 2.0.

* implementarea : numele clasei de implementare a serializatorului. Acest articol este doar 2.0.

* noWriter : dacă „adevărat”, nu generează clasa de scriitor.

* Spațiu de nume : spațiul de nume al claselor de cititor și scriitor.

* generateAsInternal : dacă „adevărat”, generează clase ca interne.

* outFileName : numele fișierului generat.

* readerHooks : o listă de cârlige de aplicat cititorului.

* writerHooks : o listă de cârlige de aplicat scriitorului.

SPECIFICAREA Cârlige


Folosind cârlige, puteți personaliza comportamentul cititorilor și scriitorilor. O specificație de cârlig
urmează această gramatică:


?
Nume ?
Nume *
Nume ?

cod sursa ?
cod sursa ?
cod sursa ?


Atributul „type” specifică contextul în care este aplicat cârligul. Poate fi unul dintre
următoarele:

* atribute : cârligul se aplică acolo unde atributele sunt serializate/deserializate.

* element : cârligul se aplică acolo unde elementele sunt serializate/deserializate.

* atribut necunoscut : cârligul este aplicat acolo unde sunt procesate atribute necunoscute.

* Element necunoscut : cârligul se aplică acolo unde sunt procesate elemente necunoscute.

* membru : cârligul se aplică acolo unde un membru este serializat/deserializat.

* tip : cârligul se aplică pentru întregul tip.

Elementul „select” specifică clasele și membrii la care trebuie adăugat cârligul.
Poate conține următoarele elemente:

* tipNume : va fi selectată clasa cu acel nume (trebuie să includă spațiu de nume)

* tipAtribut : vor fi selectate toate clasele care au acel atribut aplicat
(specificați numele complet al clasei de atribute, inclusiv spațiul de nume). Mai multe nume de atribute
poate fi specificat.

* tipMember : numele membrului clasei pentru care trebuie adăugat cârligul.

Codul sursă a cârligului poate fi specificat utilizând oricare dintre următoarele elemente:

* înlocui : codul sursă furnizat va înlocui toate serializările/deserializările
operațiuni în contextul cârligului.

* inserați Înainte : codul sursă va fi adăugat înainte de contextul hook.

* introduceDupă : codul sursă va fi adăugat după contextul hook.

Când scrieți codul pentru un cârlig puteți utiliza unele variabile speciale care sunt definite
în timpul procesului de generare a codului. Variabilele sunt următoarele:

* $TYPE: numele clasei care se generează, fără spațiu de nume.

* $FULLTYPE: numele complet al clasei care este generată, inclusiv spațiul de nume.

* $OBJECT: obiectul fiind serializat sau deserializat. Când utilizați un cititor de înlocuire
cârlig de tip „tip”, codul de cârlig trebuie să îi atribuie obiectului deserializat
variabilă.

* -I $ELEMENT: numele elementului obiectului care este serializat/deserializat.

* $NAMESPACE: spaţiul de nume al elementului obiectului care se serializează/dezerializat.

* $MEMBER: numele membrului care este serializat/deserializat. Valabil doar în „membru”
context.

HOOK EXEMPLE


Următorul exemplu adaugă un apel la o metodă Validate după deserializarea oricărei
obiect:



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



Acest exemplu specifică codul care trebuie utilizat pentru a deserializa clasa XmlSchema:



System.Xml.Schema.XmlSchema


$OBJECT = System.Xml.Schema.XmlSchema.Read (Cititor, nul);



Acesta specifică codul care trebuie utilizat pentru a citi instanțe XmlSchema:



System.Xml.Schema.XmlSchema

$OBJECT.Write (Scriitor);


Cu aceste două cârlige, serializatorul va imprima câteva informații atunci când serializează clasa
"Clasa mea":



MyNamspace.MyClass

Console.WriteLine („Serializarea MyClass”);
Console.WriteLine ("MyClass serializat");



MyNamspace.MyClass


Console.WriteLine ("Membru serializat $MEMBER");



Acest cârlig scrie un element suplimentar pentru toate tipurile care au atributul personalizat
„MyAttribute”:



MyNamspace.MyAttribute


Writer.WriteStartElement ("privateData");
Writer.WriteString ($OBJECT.PrivateData);
Writer.WriteEndElement ();



CONFIGURARE FILE EXEMPLU


Acesta este fișierul de configurare utilizat pentru a genera serializatorul pentru ServiceDescription:



ServiceDescriptionReaderBase
ServiceDescriptionWriterBase
Sistem.Servicii.Web.Descriere
ServiceDescriptionSerializerBase.cs



System.Web.Services.Configuration.XmlFormatExtensionPointAttribute

ServiceDescription.ReadExtension (Cititor, $OBJECT);



System.Xml.Schema.XmlSchema

$OBJECT = System.Xml.Schema.XmlSchema.Read (Cititor, nul);





System.Web.Services.Configuration.XmlFormatExtensionPointAttribute

ServiceDescription.WriteExtensions (Writer, $OBJECT);



System.Xml.Schema.XmlSchema

$OBJECT.Write (Scriitor);





AUTORI


Lluis Sanchez Gual ([e-mail protejat])

Utilizați genxs online folosind serviciile onworks.net


Servere și stații de lucru gratuite

Descărcați aplicații Windows și Linux

  • 1
    AstrOrzPlayer
    AstrOrzPlayer
    AstrOrz Player este un player media gratuit
    software, parte bazat pe WMP și VLC. The
    player este într-un stil minimalist, cu
    mai mult de zece culori tematice, și poate, de asemenea
    b ...
    Descărcați AstrOrzPlayer
  • 2
    movistartv
    movistartv
    Kodi Movistar+ TV este un ADDON pentru XBMC/
    Kodi care permite să dispună de un
    decodificator de servicii IPTV de
    Movistar integrat în unul de los
    centrele media ma...
    Descărcați movistartv
  • 3
    Cod :: Blocuri
    Cod :: Blocuri
    Code::Blocks este un program gratuit, open-source,
    cross-platform C, C++ și Fortran IDE
    construit pentru a satisface cele mai exigente nevoi
    a utilizatorilor săi. Este conceput să fie foarte
    extens ...
    Cod de descărcare::Blocuri
  • 4
    În mijlocul
    În mijlocul
    În mijlocul sau interfața avansată Minecraft
    iar Urmărirea Datelor/Structurii este un instrument pentru
    afișați o prezentare generală a unui Minecraft
    lume, fără a o crea efectiv. Aceasta
    poate sa ...
    Descărcați Amidst
  • 5
    MSYS2
    MSYS2
    MSYS2 este o colecție de instrumente și
    bibliotecile care vă oferă un
    mediu ușor de utilizat pentru construcție,
    instalarea și rularea Windows nativ
    software. Acesta con...
    Descărcați MSYS2
  • 6
    libjpeg-turbo
    libjpeg-turbo
    libjpeg-turbo este un codec de imagine JPEG
    care utilizează instrucțiuni SIMD (MMX, SSE2,
    NEON, AltiVec) pentru a accelera linia de bază
    Comprimarea și decompresia JPEG sunt activate
    x86, x8...
    Descărcați libjpeg-turbo
  • Mai mult »

Comenzi Linux

  • 1
    abi-tracker
    abi-tracker
    abi-tracker - vizualizați modificările ABI
    cronologia unei biblioteci de software C/C++.
    DESCRIERE: NUME: ABI Tracker
    (abi-tracker) Vizualizați modificările ABI
    cronologia unui C/C+...
    Rulați abi-tracker
  • 2
    abicheck
    abicheck
    abicheck - verificați fișierele binare ale aplicației
    pentru apeluri la simboluri private sau în evoluție
    în biblioteci și pentru legarea statică a
    unele biblioteci de sistem. ...
    Rulați abicheck
  • 3
    curiermlm
    curiermlm
    couriermlm - Lista de corespondență Courier
    administrator ...
    Rulați curiermlm
  • 4
    couriertcpd
    couriertcpd
    couriertcpd - serverul de e-mail Courier
    Daemon server TCP...
    Rulați couriertcpd
  • 5
    gbklatex
    gbklatex
    bg5latex - Utilizați LaTeX direct pe un Big5
    fișier codificat tex bg5pdflatex - Utilizați
    pdfLaTeX direct pe un tex codificat Big5
    fișier bg5+latex - Utilizați LaTeX direct pe a
    Big5+...
    Rulați gbklatex
  • 6
    gbkpdflatex
    gbkpdflatex
    bg5latex - Utilizați LaTeX direct pe un Big5
    fișier codificat tex bg5pdflatex - Utilizați
    pdfLaTeX direct pe un tex codificat Big5
    fișier bg5+latex - Utilizați LaTeX direct pe a
    Big5+...
    Rulați gbkpdflatex
  • Mai mult »

Ad