Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / Serialization / System / Runtime / Serialization / Json / ByteArrayHelperWithString.cs / 1305376 / ByteArrayHelperWithString.cs
//---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.Runtime.Serialization.Json { using System; using System.Collections.Generic; using System.Text; using System.Xml; class ByteArrayHelperWithString : ArrayHelper{ static public readonly ByteArrayHelperWithString Instance = new ByteArrayHelperWithString(); internal void WriteArray(XmlWriter writer, byte[] array, int offset, int count) { XmlJsonReader.CheckArray(array, offset, count); writer.WriteAttributeString(string.Empty, JsonGlobals.typeString, string.Empty, JsonGlobals.arrayString); for (int i = 0; i < count; i++) { writer.WriteStartElement(JsonGlobals.itemString, string.Empty); writer.WriteAttributeString(string.Empty, JsonGlobals.typeString, string.Empty, JsonGlobals.numberString); writer.WriteValue((int) array[offset + i]); writer.WriteEndElement(); } } protected override int ReadArray(XmlDictionaryReader reader, string localName, string namespaceUri, byte[] array, int offset, int count) { XmlJsonReader.CheckArray(array, offset, count); int actual = 0; while (actual < count && reader.IsStartElement(JsonGlobals.itemString, string.Empty)) { array[offset + actual] = ToByte(reader.ReadElementContentAsInt()); actual++; } return actual; } protected override void WriteArray(XmlDictionaryWriter writer, string prefix, string localName, string namespaceUri, byte[] array, int offset, int count) { WriteArray(writer, array, offset, count); } void ThrowConversionException(string value, string type) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new XmlException(SR.GetString(SR.XmlInvalidConversion, value, type))); } byte ToByte(int value) { if (value < byte.MinValue || value > byte.MaxValue) { ThrowConversionException(value.ToString(System.Globalization.NumberFormatInfo.CurrentInfo), "Byte"); } return (byte) value; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.Runtime.Serialization.Json { using System; using System.Collections.Generic; using System.Text; using System.Xml; class ByteArrayHelperWithString : ArrayHelper { static public readonly ByteArrayHelperWithString Instance = new ByteArrayHelperWithString(); internal void WriteArray(XmlWriter writer, byte[] array, int offset, int count) { XmlJsonReader.CheckArray(array, offset, count); writer.WriteAttributeString(string.Empty, JsonGlobals.typeString, string.Empty, JsonGlobals.arrayString); for (int i = 0; i < count; i++) { writer.WriteStartElement(JsonGlobals.itemString, string.Empty); writer.WriteAttributeString(string.Empty, JsonGlobals.typeString, string.Empty, JsonGlobals.numberString); writer.WriteValue((int) array[offset + i]); writer.WriteEndElement(); } } protected override int ReadArray(XmlDictionaryReader reader, string localName, string namespaceUri, byte[] array, int offset, int count) { XmlJsonReader.CheckArray(array, offset, count); int actual = 0; while (actual < count && reader.IsStartElement(JsonGlobals.itemString, string.Empty)) { array[offset + actual] = ToByte(reader.ReadElementContentAsInt()); actual++; } return actual; } protected override void WriteArray(XmlDictionaryWriter writer, string prefix, string localName, string namespaceUri, byte[] array, int offset, int count) { WriteArray(writer, array, offset, count); } void ThrowConversionException(string value, string type) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new XmlException(SR.GetString(SR.XmlInvalidConversion, value, type))); } byte ToByte(int value) { if (value < byte.MinValue || value > byte.MaxValue) { ThrowConversionException(value.ToString(System.Globalization.NumberFormatInfo.CurrentInfo), "Byte"); } return (byte) value; } } } // 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
- JoinSymbol.cs
- XmlWriterSettings.cs
- ReliabilityContractAttribute.cs
- NamespaceQuery.cs
- HelpInfo.cs
- InteropBitmapSource.cs
- OutputCacheSettings.cs
- SQLBoolean.cs
- StaticExtensionConverter.cs
- Converter.cs
- SqlCacheDependencyDatabaseCollection.cs
- FontSource.cs
- x509utils.cs
- Win32.cs
- XmlTextReaderImplHelpers.cs
- WindowsComboBox.cs
- TableHeaderCell.cs
- BitmapMetadata.cs
- RSAPKCS1KeyExchangeFormatter.cs
- PolicyUnit.cs
- InputEventArgs.cs
- DiscoveryMessageProperty.cs
- MultipartContentParser.cs
- SqlDataSourceCache.cs
- XmlCharCheckingReader.cs
- MetadataArtifactLoader.cs
- TopClause.cs
- SplitContainer.cs
- PopupControlService.cs
- FrugalMap.cs
- path.cs
- DotExpr.cs
- CanonicalFontFamilyReference.cs
- ColorTranslator.cs
- InstanceData.cs
- DBSchemaTable.cs
- ObjectStateEntryOriginalDbUpdatableDataRecord.cs
- RecognizerInfo.cs
- ImageIndexConverter.cs
- ActiveXHelper.cs
- IteratorAsyncResult.cs
- QueryBranchOp.cs
- DataGridViewCellValidatingEventArgs.cs
- MeasurementDCInfo.cs
- AsmxEndpointPickerExtension.cs
- ExeConfigurationFileMap.cs
- PrePrepareMethodAttribute.cs
- WebHeaderCollection.cs
- PagedControl.cs
- WebBrowserPermission.cs
- InstanceOwner.cs
- ContainsRowNumberChecker.cs
- RuntimeVariablesExpression.cs
- Style.cs
- InternalPolicyElement.cs
- TextParaLineResult.cs
- IsolatedStorageFileStream.cs
- FileSystemEventArgs.cs
- TreeViewImageIndexConverter.cs
- DbQueryCommandTree.cs
- XPathAncestorIterator.cs
- ToolStripDropTargetManager.cs
- ObjectListCommand.cs
- Style.cs
- WriterOutput.cs
- Misc.cs
- AttributedMetaModel.cs
- DynamicPhysicalDiscoSearcher.cs
- ToolStripItemTextRenderEventArgs.cs
- SessionStateSection.cs
- OracleTimeSpan.cs
- DoWorkEventArgs.cs
- WebCategoryAttribute.cs
- TextBoxView.cs
- XmlDictionary.cs
- OnOperation.cs
- InlineCollection.cs
- DbSource.cs
- NamespaceInfo.cs
- OperationFormatter.cs
- HwndKeyboardInputProvider.cs
- SafeHandles.cs
- ApplicationBuildProvider.cs
- CounterSampleCalculator.cs
- ScriptServiceAttribute.cs
- Cell.cs
- TextEditorCharacters.cs
- ErrorRuntimeConfig.cs
- DataGridViewBindingCompleteEventArgs.cs
- HttpApplicationFactory.cs
- FixedSOMFixedBlock.cs
- CheckBoxAutomationPeer.cs
- WebPartMinimizeVerb.cs
- KnownAssembliesSet.cs
- ValidationRule.cs
- PointAnimationClockResource.cs
- NumericExpr.cs
- NTAccount.cs
- ObjectDataSourceSelectingEventArgs.cs
- Random.cs