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
- ImmComposition.cs
- AdPostCacheSubstitution.cs
- XpsFixedDocumentReaderWriter.cs
- LayoutSettings.cs
- TypeResolvingOptionsAttribute.cs
- DbConvert.cs
- UnmanagedBitmapWrapper.cs
- UrlPath.cs
- HtmlSelect.cs
- BasicSecurityProfileVersion.cs
- HScrollProperties.cs
- TypeBuilderInstantiation.cs
- CurrentTimeZone.cs
- OptimizerPatterns.cs
- BindingGroup.cs
- PropertyDescriptor.cs
- CompilerCollection.cs
- ValueSerializer.cs
- XmlSchemaParticle.cs
- ExpressionPrefixAttribute.cs
- GenericIdentity.cs
- Speller.cs
- CharUnicodeInfo.cs
- IPEndPoint.cs
- BindStream.cs
- HandlerMappingMemo.cs
- SiteMapDataSource.cs
- HyperLinkStyle.cs
- RuntimeWrappedException.cs
- ServiceHttpHandlerFactory.cs
- WebConfigurationManager.cs
- ViewManager.cs
- XpsImageSerializationService.cs
- HttpWebRequest.cs
- RepeaterItem.cs
- AmbientValueAttribute.cs
- IdnMapping.cs
- OleDbPermission.cs
- ToolStripComboBox.cs
- AdapterDictionary.cs
- SerialPort.cs
- XmlSchemaIdentityConstraint.cs
- WebBrowserNavigatedEventHandler.cs
- BitmapEffectInputConnector.cs
- WindowsFormsSynchronizationContext.cs
- CodeSnippetCompileUnit.cs
- DependencyObject.cs
- HtmlElementCollection.cs
- Parser.cs
- EntitySetRetriever.cs
- DummyDataSource.cs
- SecurityContext.cs
- Soap12ProtocolImporter.cs
- Vector3DAnimationBase.cs
- _emptywebproxy.cs
- MyContact.cs
- indexingfiltermarshaler.cs
- MatrixTransform.cs
- HandleRef.cs
- FileStream.cs
- DrawingImage.cs
- ActiveXContainer.cs
- DataGridViewColumnConverter.cs
- FontConverter.cs
- MemberPathMap.cs
- TypeFieldSchema.cs
- InternalRelationshipCollection.cs
- IInstanceTable.cs
- Config.cs
- TextEncodedRawTextWriter.cs
- MexHttpBindingCollectionElement.cs
- ContentPresenter.cs
- UdpAnnouncementEndpoint.cs
- ContextStack.cs
- SparseMemoryStream.cs
- ExpandableObjectConverter.cs
- Wizard.cs
- KerberosSecurityTokenParameters.cs
- Renderer.cs
- WebPermission.cs
- SortedList.cs
- CssStyleCollection.cs
- CodeNamespaceImport.cs
- BStrWrapper.cs
- EventLogEntryCollection.cs
- externdll.cs
- TimeZone.cs
- ProcessThreadCollection.cs
- PreservationFileReader.cs
- ChtmlCalendarAdapter.cs
- SQLBytes.cs
- SafeRightsManagementPubHandle.cs
- XmlSerializerImportOptions.cs
- ToggleButton.cs
- Input.cs
- SoapCodeExporter.cs
- _DomainName.cs
- DictionaryMarkupSerializer.cs
- InputLanguageManager.cs
- XmlSerializerOperationGenerator.cs