Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / XmlUtils / System / Xml / Xsl / Runtime / XmlILStorageConverter.cs / 1305376 / XmlILStorageConverter.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.IO; using System.Xml; using System.Xml.XPath; using System.Xml.Schema; using System.Xml.Xsl; using System.ComponentModel; namespace System.Xml.Xsl.Runtime { ////// This is a simple convenience wrapper internal class that contains static helper methods that get a value /// converter from XmlQueryRuntime and use it convert among several physical Clr representations for /// the same logical Xml type. For example, an external function might have an argument typed as /// xs:integer, with Clr type Decimal. Since ILGen stores xs:integer as Clr type Int64 instead of /// Decimal, a conversion to the desired storage type must take place. /// [EditorBrowsable(EditorBrowsableState.Never)] public static class XmlILStorageConverter { //----------------------------------------------- // ToAtomicValue //----------------------------------------------- public static XmlAtomicValue StringToAtomicValue(string value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue DecimalToAtomicValue(decimal value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue Int64ToAtomicValue(long value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue Int32ToAtomicValue(int value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue BooleanToAtomicValue(bool value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue DoubleToAtomicValue(double value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue SingleToAtomicValue(float value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue DateTimeToAtomicValue(DateTime value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue XmlQualifiedNameToAtomicValue(XmlQualifiedName value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue TimeSpanToAtomicValue(TimeSpan value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue BytesToAtomicValue(byte[] value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static IListNavigatorsToItems(IList listNavigators) { // Check to see if the navigator cache implements IList IList listItems = listNavigators as IList ; if (listItems != null) return listItems; // Create XmlQueryNodeSequence, which does implement IList return new XmlQueryNodeSequence(listNavigators); } public static IList ItemsToNavigators(IList listItems) { // Check to see if the navigator cache implements IList IList listNavs = listItems as IList ; if (listNavs != null) return listNavs; // Create XmlQueryNodeSequence, which does implement IList XmlQueryNodeSequence seq = new XmlQueryNodeSequence(listItems.Count); for (int i = 0; i < listItems.Count; i++) seq.Add((XPathNavigator) listItems[i]); return seq; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.IO; using System.Xml; using System.Xml.XPath; using System.Xml.Schema; using System.Xml.Xsl; using System.ComponentModel; namespace System.Xml.Xsl.Runtime { ////// This is a simple convenience wrapper internal class that contains static helper methods that get a value /// converter from XmlQueryRuntime and use it convert among several physical Clr representations for /// the same logical Xml type. For example, an external function might have an argument typed as /// xs:integer, with Clr type Decimal. Since ILGen stores xs:integer as Clr type Int64 instead of /// Decimal, a conversion to the desired storage type must take place. /// [EditorBrowsable(EditorBrowsableState.Never)] public static class XmlILStorageConverter { //----------------------------------------------- // ToAtomicValue //----------------------------------------------- public static XmlAtomicValue StringToAtomicValue(string value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue DecimalToAtomicValue(decimal value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue Int64ToAtomicValue(long value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue Int32ToAtomicValue(int value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue BooleanToAtomicValue(bool value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue DoubleToAtomicValue(double value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue SingleToAtomicValue(float value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue DateTimeToAtomicValue(DateTime value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue XmlQualifiedNameToAtomicValue(XmlQualifiedName value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue TimeSpanToAtomicValue(TimeSpan value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static XmlAtomicValue BytesToAtomicValue(byte[] value, int index, XmlQueryRuntime runtime) { return new XmlAtomicValue(runtime.GetXmlType(index).SchemaType, value); } public static IListNavigatorsToItems(IList listNavigators) { // Check to see if the navigator cache implements IList IList listItems = listNavigators as IList ; if (listItems != null) return listItems; // Create XmlQueryNodeSequence, which does implement IList return new XmlQueryNodeSequence(listNavigators); } public static IList ItemsToNavigators(IList listItems) { // Check to see if the navigator cache implements IList IList listNavs = listItems as IList ; if (listNavs != null) return listNavs; // Create XmlQueryNodeSequence, which does implement IList XmlQueryNodeSequence seq = new XmlQueryNodeSequence(listItems.Count); for (int i = 0; i < listItems.Count; i++) seq.Add((XPathNavigator) listItems[i]); return seq; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- HMACSHA256.cs
- SafeProcessHandle.cs
- StringReader.cs
- IncrementalReadDecoders.cs
- ProcessHostFactoryHelper.cs
- SpellerHighlightLayer.cs
- SynchronousReceiveBehavior.cs
- ObjectListShowCommandsEventArgs.cs
- FacetDescription.cs
- DataObjectFieldAttribute.cs
- _RequestCacheProtocol.cs
- ColorConverter.cs
- EntryWrittenEventArgs.cs
- mactripleDES.cs
- TransformationRules.cs
- SafeRightsManagementSessionHandle.cs
- XmlCodeExporter.cs
- ListViewItemSelectionChangedEvent.cs
- ArraySortHelper.cs
- GeometryHitTestResult.cs
- ThemeableAttribute.cs
- CollectionViewSource.cs
- FragmentQuery.cs
- UnsafeNativeMethods.cs
- HtmlTableRow.cs
- SuppressIldasmAttribute.cs
- GridToolTip.cs
- ElementAtQueryOperator.cs
- RepeatButtonAutomationPeer.cs
- KeyNotFoundException.cs
- TextBoxAutoCompleteSourceConverter.cs
- DataShape.cs
- DataGridViewRowStateChangedEventArgs.cs
- RepeatButton.cs
- ObjectParameterCollection.cs
- DataObjectCopyingEventArgs.cs
- PrivilegedConfigurationManager.cs
- IntellisenseTextBox.designer.cs
- CodeActivityMetadata.cs
- ReferentialConstraintRoleElement.cs
- CodeGroup.cs
- PrimaryKeyTypeConverter.cs
- BuildProvider.cs
- ThaiBuddhistCalendar.cs
- ApplicationContext.cs
- ExpressionCopier.cs
- UInt64.cs
- DTCTransactionManager.cs
- EncryptedKeyIdentifierClause.cs
- QueryReaderSettings.cs
- ByteKeyFrameCollection.cs
- PreviewControlDesigner.cs
- CompressEmulationStream.cs
- Inflater.cs
- ObjectComplexPropertyMapping.cs
- parserscommon.cs
- ConfigsHelper.cs
- SQLBytes.cs
- RightsManagementEncryptionTransform.cs
- AlphaSortedEnumConverter.cs
- PasswordPropertyTextAttribute.cs
- RC2CryptoServiceProvider.cs
- ObfuscateAssemblyAttribute.cs
- SmtpNtlmAuthenticationModule.cs
- TripleDESCryptoServiceProvider.cs
- ReadOnlyCollection.cs
- DetailsViewInsertEventArgs.cs
- XamlStream.cs
- BulletedListDesigner.cs
- TimeStampChecker.cs
- Comparer.cs
- LocationSectionRecord.cs
- EpmContentSerializer.cs
- PngBitmapEncoder.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- ServiceControllerDesigner.cs
- ResourceExpression.cs
- PkcsMisc.cs
- ViewSimplifier.cs
- NotCondition.cs
- ProviderManager.cs
- EventWaitHandle.cs
- BrowserCapabilitiesFactory.cs
- DbMetaDataColumnNames.cs
- VectorAnimationUsingKeyFrames.cs
- DeflateEmulationStream.cs
- DataSvcMapFile.cs
- SqlClientPermission.cs
- HwndProxyElementProvider.cs
- FlowLayout.cs
- SortedSetDebugView.cs
- WebInvokeAttribute.cs
- DataException.cs
- NotImplementedException.cs
- Scalars.cs
- control.ime.cs
- DependencySource.cs
- ExpressionBuilder.cs
- FrameworkElementFactory.cs
- Coordinator.cs