Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DataServiceResponse.cs
- RootBuilder.cs
- XPathQilFactory.cs
- DataControlReference.cs
- DiscriminatorMap.cs
- PageRanges.cs
- UndirectedGraph.cs
- DrawingAttributesDefaultValueFactory.cs
- PointLightBase.cs
- MergablePropertyAttribute.cs
- WithStatement.cs
- TextRunCacheImp.cs
- FlowNode.cs
- FileSecurity.cs
- Privilege.cs
- Application.cs
- ContourSegment.cs
- CustomAttribute.cs
- ComboBoxRenderer.cs
- _SingleItemRequestCache.cs
- Graph.cs
- CompositeControlDesigner.cs
- PtsHost.cs
- VectorCollection.cs
- DateTimeValueSerializer.cs
- CodeMemberProperty.cs
- MarkupCompilePass1.cs
- EntityViewGenerationConstants.cs
- NavigationWindow.cs
- Application.cs
- XmlParser.cs
- PartialCachingControl.cs
- FontInfo.cs
- StateWorkerRequest.cs
- StorageMappingItemCollection.cs
- DocumentViewerBaseAutomationPeer.cs
- versioninfo.cs
- DictionaryBase.cs
- StateMachineWorkflow.cs
- Action.cs
- DefaultPrintController.cs
- FloaterBaseParagraph.cs
- BinaryOperationBinder.cs
- CompilationPass2Task.cs
- AutoResetEvent.cs
- IList.cs
- RoutedEventArgs.cs
- QueueException.cs
- XmlKeywords.cs
- DocumentViewerAutomationPeer.cs
- FormParameter.cs
- FormsIdentity.cs
- MainMenu.cs
- ObjectPropertyMapping.cs
- ZipIOCentralDirectoryFileHeader.cs
- UnionExpr.cs
- ExtenderControl.cs
- SchemaNames.cs
- EditingCommands.cs
- CapabilitiesState.cs
- ImmutableDispatchRuntime.cs
- ObjectDataSourceFilteringEventArgs.cs
- DictionaryBase.cs
- XmlSerializerNamespaces.cs
- PropertyIDSet.cs
- Resources.Designer.cs
- XmlDomTextWriter.cs
- StructuredType.cs
- ToolStripPanel.cs
- Gdiplus.cs
- ParallelDesigner.xaml.cs
- _ProxyRegBlob.cs
- PageTheme.cs
- cache.cs
- PagedDataSource.cs
- HttpListenerResponse.cs
- IListConverters.cs
- UrlPropertyAttribute.cs
- ModelUIElement3D.cs
- FollowerQueueCreator.cs
- ModelItemCollection.cs
- Int32AnimationUsingKeyFrames.cs
- SqlBooleanizer.cs
- TextTreeNode.cs
- Italic.cs
- AmbientLight.cs
- Rules.cs
- EncryptedPackage.cs
- ExpressionConverter.cs
- ParentQuery.cs
- SecurityTokenValidationException.cs
- SizeF.cs
- PartitionedDataSource.cs
- BooleanAnimationBase.cs
- RegexRunner.cs
- RightsManagementResourceHelper.cs
- CategoryGridEntry.cs
- InternalControlCollection.cs
- XsltException.cs
- SelectionProcessor.cs