Ubuntu Online, Fedora Online, Windows online emulator അല്ലെങ്കിൽ MAC OS ഓൺലൈൻ എമുലേറ്റർ എന്നിങ്ങനെയുള്ള ഞങ്ങളുടെ ഒന്നിലധികം സൗജന്യ ഓൺലൈൻ വർക്ക്സ്റ്റേഷനുകളിലൊന്ന് ഉപയോഗിച്ച് OnWorks സൗജന്യ ഹോസ്റ്റിംഗ് ദാതാവിൽ പ്രവർത്തിപ്പിക്കാവുന്ന കമാൻഡ് genxs ആണിത്.
പട്ടിക:
NAME
genxs - മോണോയുടെ Xml സീരിയലൈസർ ജനറേറ്റർ
സിനോപ്സിസ്
genxs കോൺഫിഗറേഷൻ ഫയൽ [ഡെസ്റ്റിനേഷൻ ഫോൾഡർ]
വിവരണം
genxs ഇഷ്ടാനുസൃത XML സീരിയലൈസേഷൻ എഴുത്തുകാരെയും ക്ലാസുകൾക്കായി വായനക്കാരെയും സൃഷ്ടിക്കുന്നതിനുള്ള ഒരു ഉപകരണമാണ്.
കോൺഫിഗറേഷൻ ഫയൽ പോലുള്ള നിരവധി വിവരങ്ങൾ വ്യക്തമാക്കുന്ന കോൺഫിഗറേഷൻ ഫയലാണ്
വായനക്കാരനെയും എഴുത്തുകാരനെയും സൃഷ്ടിക്കുന്നതിനുള്ള ക്ലാസ്, ക്ലാസുകളുടെ പേരും നെയിംസ്പെയ്സും
സൃഷ്ടിക്കാൻ, പ്രയോഗിക്കാൻ കൊളുത്തുകളുടെ ഒരു ശേഖരം. കൊളുത്തുകൾ ഉപയോഗിച്ച് ഇത് സാധ്യമാണ്
സൃഷ്ടിച്ച ഫയൽ പരിഷ്ക്കരിക്കാതെ തന്നെ സീരിയലൈസറിന്റെ സ്വഭാവം ഇഷ്ടാനുസൃതമാക്കുക, അങ്ങനെ
സോഴ്സ് ക്ലാസ് പരിഷ്ക്കരിച്ചാൽ നിങ്ങൾക്കത് സുരക്ഷിതമായി പുനഃസൃഷ്ടിക്കാനാകും.
ഡെസ്റ്റിനേഷൻ ഫോൾഡർ ഫയലുകൾ ജനറേറ്റ് ചെയ്യുന്ന ഫോൾഡർ വ്യക്തമാക്കുന്നു.
ശ്രദ്ധിക്കുക: ഈ ടൂൾ മോണോ റൺടൈമിൽ മാത്രമേ പ്രവർത്തിക്കൂ, കാരണം ഇത് ചില ആന്തരിക ക്ലാസുകൾ ഉപയോഗിക്കുന്നില്ല
മറ്റ് റൺടൈമുകളിൽ ലഭ്യമാണ്.
കോൺഫിഗറേഷൻ FILE ഫോർമാറ്റ്
കോൺഫിഗറേഷൻ ഫയൽ ഇനിപ്പറയുന്ന വ്യാകരണത്തെ അടിസ്ഥാനമാക്കിയുള്ള ഒരു xml പ്രമാണമാണ് ("?" അർത്ഥമാക്കുന്നത്
ഓപ്ഷണൽ, "*" 0 അല്ലെങ്കിൽ കൂടുതൽ):
*
പേര് ?
പേര് ?
പേര് ?
പേര് ?
?
*
?
*
ഒരു കോൺഫിഗറേഷൻ ഫയലിന് ഒന്നിലധികം "സീരിയലൈസർ" ഘടകങ്ങൾ ഉണ്ടായിരിക്കാം, അവയിൽ ഓരോന്നും വ്യക്തമാക്കുന്നു
നിരവധി ജനറേഷൻ ഓപ്ഷനുകൾക്കൊപ്പം ഒരു സീരിയലൈസർ സൃഷ്ടിക്കുന്നതിനുള്ള ക്ലാസ്. ദി
ഉറവിട ക്ലാസ് ഇനിപ്പറയുന്ന ആട്രിബ്യൂട്ടുകളിൽ വ്യക്തമാക്കിയിരിക്കുന്നു:
* ക്ലാസ് : ക്ലാസ്സിന്റെ പേര് (നെയിംസ്പേസ് ഉൾപ്പെടെ).
* നിയമസഭാ : അസംബ്ലി നാമം. അതിൽ പൂർണ്ണമായ പാത ഉൾപ്പെടുത്താം.
ചൈൽഡ് ഘടകങ്ങളിൽ ജനറേഷൻ ഓപ്ഷനുകൾ വ്യക്തമാക്കിയിരിക്കുന്നു:
* വായനക്കാരൻ : റീഡർ ക്ലാസ്സിന്റെ പേര്.
* നോ റീഡർ : "ശരി" ആണെങ്കിൽ, അത് റീഡർ ക്ലാസ് സൃഷ്ടിക്കുന്നില്ല.
* എഴുത്തുകാരി : എഴുത്തുകാരുടെ ക്ലാസ്സിന്റെ പേര്.
* അടിസ്ഥാന സീരിയലൈസർ : അടിസ്ഥാന xml സീരിയലൈസർ ക്ലാസിന്റെ പേര്. ഈ ഇനം 2.0 മാത്രമാണ്.
* നടപ്പാക്കൽ : സീരിയലൈസർ നടപ്പിലാക്കൽ ക്ലാസിന്റെ പേര്. ഈ ഇനം 2.0 മാത്രമാണ്.
* നോഎഴുത്തുകാരൻ : "ശരി" ആണെങ്കിൽ, അത് എഴുത്തുകാരുടെ ക്ലാസ് സൃഷ്ടിക്കുന്നില്ല.
* നെയിംസ്പേസ് : വായനക്കാരുടെയും എഴുത്തുകാരുടെയും ക്ലാസുകളുടെ നെയിംസ്പേസ്.
* ജനറേറ്റ്ആസ് ഇന്റേണൽ : "ശരി" ആണെങ്കിൽ, അത് ക്ലാസുകൾ ആന്തരികമായി സൃഷ്ടിക്കുന്നു.
* outFileName : സൃഷ്ടിച്ച ഫയലിന്റെ പേര്.
* റീഡർഹൂക്സ് : വായനക്കാരന് പ്രയോഗിക്കേണ്ട കൊളുത്തുകളുടെ ഒരു ലിസ്റ്റ്.
* എഴുത്തുകാരൻ ഹുക്ക്സ് : എഴുത്തുകാരന് പ്രയോഗിക്കേണ്ട കൊളുത്തുകളുടെ ഒരു ലിസ്റ്റ്.
വ്യക്തമാക്കുന്നത് ഹുക്കുകൾ
കൊളുത്തുകൾ ഉപയോഗിച്ച് നിങ്ങൾക്ക് വായനക്കാരുടെയും എഴുത്തുകാരുടെയും പെരുമാറ്റം ഇഷ്ടാനുസൃതമാക്കാൻ കഴിയും. ഒരു ഹുക്ക് സ്പെസിഫിക്കേഷൻ
ഈ വ്യാകരണം പിന്തുടരുന്നു:
?
പേര് ?
പേര് *
പേര് ?
സോഴ്സ് കോഡ് ?
സോഴ്സ് കോഡ് ?
സോഴ്സ് കോഡ് ?
"ടൈപ്പ്" ആട്രിബ്യൂട്ട് ഹുക്ക് പ്രയോഗിക്കുന്ന സന്ദർഭം വ്യക്തമാക്കുന്നു. അതിലൊന്നാകാം
ഇനിപ്പറയുന്നവ:
* ഗുണവിശേഷങ്ങൾ : ആട്രിബ്യൂട്ടുകൾ സീരിയലൈസ്/ഡീസിയലൈസ് ചെയ്തിടത്ത് ഹുക്ക് പ്രയോഗിക്കുന്നു.
* ഘടകങ്ങൾ : മൂലകങ്ങൾ സീരിയലൈസ്/ഡീസിയലൈസ് ചെയ്തിടത്ത് ഹുക്ക് പ്രയോഗിക്കുന്നു.
* അറിയപ്പെടാത്ത ആട്രിബ്യൂട്ട് : അജ്ഞാത ആട്രിബ്യൂട്ടുകൾ പ്രോസസ്സ് ചെയ്യുന്നിടത്ത് ഹുക്ക് പ്രയോഗിക്കുന്നു.
* അജ്ഞാത ഘടകം : അജ്ഞാത ഘടകങ്ങൾ പ്രോസസ്സ് ചെയ്യുന്നിടത്ത് ഹുക്ക് പ്രയോഗിക്കുന്നു.
* അംഗം : ഒരു അംഗം സീരിയൽ/ഡീസീരിയലൈസ് ചെയ്തിടത്ത് ഹുക്ക് പ്രയോഗിക്കുന്നു.
* ടൈപ്പ് ചെയ്യുക : മുഴുവൻ തരത്തിനും ഹുക്ക് പ്രയോഗിക്കുന്നു.
"തിരഞ്ഞെടുക്കുക" ഘടകം ഹുക്ക് ചേർക്കേണ്ട ക്ലാസുകളും അംഗങ്ങളും വ്യക്തമാക്കുന്നു.
അതിൽ ഇനിപ്പറയുന്ന ഘടകങ്ങൾ അടങ്ങിയിരിക്കാം:
* ടൈപ്പ് പേര് : ആ പേരുള്ള ക്ലാസ് തിരഞ്ഞെടുക്കപ്പെടും (നെയിംസ്പേസ് ഉൾപ്പെടുത്തണം)
* ടൈപ്പ് ആട്രിബ്യൂട്ട് : ആ ആട്രിബ്യൂട്ട് പ്രയോഗിക്കുന്ന എല്ലാ ക്ലാസുകളും തിരഞ്ഞെടുക്കും
(നെയിംസ്പേസ് ഉൾപ്പെടെ, മുഴുവൻ ആട്രിബ്യൂട്ട് ക്ലാസിന്റെ പേര് വ്യക്തമാക്കുക). നിരവധി ആട്രിബ്യൂട്ട് പേരുകൾ
വ്യക്തമാക്കാം.
* തരം അംഗം : ഹുക്ക് ചേർക്കേണ്ട ക്ലാസ് അംഗത്തിന്റെ പേര്.
ഇനിപ്പറയുന്ന ഏതെങ്കിലും ഘടകങ്ങൾ ഉപയോഗിച്ച് ഹുക്ക് സോഴ്സ് കോഡ് വ്യക്തമാക്കാൻ കഴിയും:
* മാറ്റിസ്ഥാപിക്കാൻ : നൽകിയിരിക്കുന്ന സോഴ്സ് കോഡ് എല്ലാ സീരിയലൈസേഷനും/ഡീസിയലൈസേഷനും മാറ്റിസ്ഥാപിക്കും
ഹുക്ക് സന്ദർഭത്തിലെ പ്രവർത്തനങ്ങൾ.
* മുമ്പ് തിരുകുക : ഹുക്ക് സന്ദർഭത്തിന് മുമ്പ് സോഴ്സ് കോഡ് ചേർക്കും.
* ശേഷം ചേർക്കുക : ഹുക്ക് സന്ദർഭത്തിന് ശേഷം സോഴ്സ് കോഡ് ചേർക്കും.
ഒരു ഹുക്കിനായി കോഡ് എഴുതുമ്പോൾ നിങ്ങൾക്ക് നിർവചിച്ചിരിക്കുന്ന ചില പ്രത്യേക വേരിയബിളുകൾ ഉപയോഗിക്കാം
കോഡ് സൃഷ്ടിക്കുന്ന പ്രക്രിയയിൽ. വേരിയബിളുകൾ ഇനിപ്പറയുന്നവയാണ്:
* $TYPE: നെയിംസ്പേസ് ഇല്ലാതെ ജനറേറ്റ് ചെയ്യുന്ന ക്ലാസിന്റെ പേര്.
* $FULLTYPE: നെയിംസ്പേസ് ഉൾപ്പെടെ ജനറേറ്റ് ചെയ്യുന്ന ക്ലാസിന്റെ മുഴുവൻ പേര്.
* $OBJECT: ഒബ്ജക്റ്റ് സീരിയലൈസ് അല്ലെങ്കിൽ ഡിസീരിയലൈസ് ചെയ്യുന്നു. പകരം റീഡർ ഉപയോഗിക്കുമ്പോൾ
"ടൈപ്പ്" എന്ന തരത്തിലുള്ള ഹുക്ക്, ഹുക്ക് കോഡ് ഇതിലേക്ക് ഡിസീരിയലൈസ് ചെയ്ത ഒബ്ജക്റ്റ് നൽകണം
വേരിയബിൾ.
* -I $ELEMENT: സീരിയലൈസ് ചെയ്ത/ഡീസീരിയലൈസ് ചെയ്യുന്ന ഒബ്ജക്റ്റിന്റെ മൂലകത്തിന്റെ പേര്.
* $NAMESPACE: സീരിയലൈസ്/ഡീസിയലൈസ് ചെയ്യപ്പെടുന്ന വസ്തുവിന്റെ മൂലകത്തിന്റെ നെയിംസ്പെയ്സ്.
* $മെമ്പർ: സീരിയൽ/ഡീസീരിയലൈസ് ചെയ്യുന്ന അംഗത്തിന്റെ പേര്. "അംഗത്തിൽ" മാത്രമേ സാധുതയുള്ളൂ
സന്ദർഭം.
HOOK ഉദാഹരണങ്ങൾ
ഇനിപ്പറയുന്ന ഉദാഹരണം ഏതെങ്കിലും മൂല്യനിർണ്ണയ രീതിയിലേക്ക് ഒരു കോൾ ചേർക്കുന്നു
ഒബ്ജക്റ്റ്:
System.Xml.Schema.XmlSchema.Validate$TYPE ($OBJECT);
ഈ ഉദാഹരണം XmlSchema ക്ലാസ് ഡീസിയലൈസ് ചെയ്യാൻ ഉപയോഗിക്കേണ്ട കോഡ് വ്യക്തമാക്കുന്നു:
System.Xml.Schema.XmlSchema
$OBJECT = System.Xml.Schema.XmlSchema.Read (Reader, null);
അത് XmlSchema ഇൻസ്റ്റൻസുകൾ വായിക്കാൻ ഉപയോഗിക്കേണ്ട കോഡ് വ്യക്തമാക്കുന്നു:
System.Xml.Schema.XmlSchema
$OBJECT.എഴുതുക (എഴുത്തുകാരൻ);
ഈ രണ്ട് ഹുക്കുകൾ ഉപയോഗിച്ച് സീരിയലൈസർ ക്ലാസ് സീരിയൽ ചെയ്യുമ്പോൾ ചില വിവരങ്ങൾ പ്രിന്റ് ചെയ്യും
"MyClass":
MyNamespace.MyClass
Console.WriteLine ("Serializing MyClass");
Console.WriteLine ("MyClass serialized");
MyNamespace.MyClass
Console.WriteLine ("സീരിയലൈസ് ചെയ്ത അംഗം $MEMBER");
ഇഷ്ടാനുസൃത ആട്രിബ്യൂട്ട് ഉള്ള എല്ലാ തരങ്ങൾക്കും ഈ ഹുക്ക് ഒരു അധിക ഘടകം എഴുതുന്നു
"MyAtribute":
MyNamespace.MyAttribute
Writer.WriteStartElement ("privateData");
Writer.WriteString ($OBJECT.PrivateData);
Writer.WriteEndElement ();
കോൺഫിഗറേഷൻ FILE ഉദാഹരണം
സേവനവിവരണത്തിനായുള്ള സീരിയലൈസർ സൃഷ്ടിക്കാൻ ഉപയോഗിക്കുന്ന കോൺഫിഗറേഷൻ ഫയലാണിത്:
സേവനവിവരണം റീഡർബേസ്
സേവനവിവരണം റൈറ്റർബേസ്
System.Web.Services.വിവരണം
ServiceDescriptionSerializerBase.cs
System.Web.Services.Configuration.XmlFormatExtensionPointAttribute
ServiceDescription.ReadExtension (റീഡർ, $OBJECT);
System.Xml.Schema.XmlSchema
$OBJECT = System.Xml.Schema.XmlSchema.Read (Reader, null);
System.Web.Services.Configuration.XmlFormatExtensionPointAttribute
ServiceDescription.WriteExtensions (എഴുത്തുകാരൻ, $OBJECT);
System.Xml.Schema.XmlSchema
$OBJECT.എഴുതുക (എഴുത്തുകാരൻ);
AUTHORS
ലൂയിസ് സാഞ്ചസ് ഗുവൽ ([ഇമെയിൽ പരിരക്ഷിച്ചിരിക്കുന്നു])
onworks.net സേവനങ്ങൾ ഉപയോഗിച്ച് genxs ഓൺലൈനിൽ ഉപയോഗിക്കുക