Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / Serialization / System / Runtime / Serialization / XmlSerializableWriter.cs / 1 / XmlSerializableWriter.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Runtime.Serialization { using System; using System.Xml; internal class XmlSerializableWriter : XmlWriter { XmlWriter xmlWriter; int depth = 0; object obj; internal void BeginWrite(XmlWriter xmlWriter, object obj) { depth = 0; this.xmlWriter = xmlWriter; this.obj = obj; } internal void EndWrite() { if (depth != 0) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(XmlObjectSerializer.CreateSerializationException(SR.GetString(SR.IXmlSerializableMissingEndElements, (obj == null ? string.Empty : DataContract.GetClrTypeFullName(obj.GetType()))))); this.obj = null; } public override void WriteStartDocument() { if (WriteState == WriteState.Start) xmlWriter.WriteStartDocument(); } public override void WriteEndDocument() { xmlWriter.WriteEndDocument(); } public override void WriteStartDocument(bool standalone) { if (WriteState == WriteState.Start) xmlWriter.WriteStartDocument(standalone); } public override void WriteDocType(string name, string pubid, string sysid, string subset) { // XmlSerializer does not write doc type } public override void WriteStartElement(string prefix, string localName, string ns) { xmlWriter.WriteStartElement(prefix, localName, ns); depth++; } public override void WriteEndElement() { if (depth == 0) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(XmlObjectSerializer.CreateSerializationException(SR.GetString(SR.IXmlSerializableWritePastSubTree, (obj == null ? string.Empty : DataContract.GetClrTypeFullName(obj.GetType()))))); xmlWriter.WriteEndElement(); depth--; } public override void WriteFullEndElement() { if (depth == 0) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(XmlObjectSerializer.CreateSerializationException(SR.GetString(SR.IXmlSerializableWritePastSubTree, (obj == null ? string.Empty : DataContract.GetClrTypeFullName(obj.GetType()))))); xmlWriter.WriteFullEndElement(); depth--; } public override void Close() { throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(XmlObjectSerializer.CreateSerializationException(SR.GetString(SR.IXmlSerializableIllegalOperation))); } public override void WriteStartAttribute(string prefix, string localName, string ns) { xmlWriter.WriteStartAttribute(prefix, localName, ns); } public override void WriteEndAttribute() {xmlWriter.WriteEndAttribute();} public override void WriteCData(string text) {xmlWriter.WriteCData(text);} public override void WriteComment(string text) {xmlWriter.WriteComment(text);} public override void WriteProcessingInstruction(string name, string text) {xmlWriter.WriteProcessingInstruction(name, text);} public override void WriteEntityRef(string name) {xmlWriter.WriteEntityRef(name);} public override void WriteCharEntity(char ch) {xmlWriter.WriteCharEntity(ch);} public override void WriteWhitespace(string ws) {xmlWriter.WriteWhitespace(ws);} public override void WriteString(string text) {xmlWriter.WriteString(text);} public override void WriteSurrogateCharEntity(char lowChar, char highChar){xmlWriter.WriteSurrogateCharEntity(lowChar, highChar);} public override void WriteChars(Char[] buffer, int index, int count) {xmlWriter.WriteChars(buffer, index, count);} public override void WriteRaw(Char[] buffer, int index, int count) {xmlWriter.WriteRaw(buffer, index, count);} public override void WriteRaw(String data) {xmlWriter.WriteRaw(data);} public override void WriteBase64(byte[] buffer, int index, int count) {xmlWriter.WriteBase64(buffer, index, count);} public override void WriteBinHex(byte[] buffer, int index, int count) {xmlWriter.WriteBinHex(buffer, index, count);} public override WriteState WriteState { get { return xmlWriter.WriteState; } } public override void Flush() { xmlWriter.Flush(); } public override void WriteName(string name) {xmlWriter.WriteName(name);} public override void WriteQualifiedName(string localName, string ns) {xmlWriter.WriteQualifiedName(localName, ns);} public override string LookupPrefix(string ns) {return xmlWriter.LookupPrefix(ns);} public override XmlSpace XmlSpace { get { return xmlWriter.XmlSpace; } } public override string XmlLang { get { return xmlWriter.XmlLang; } } public override void WriteNmToken(string name) {xmlWriter.WriteNmToken(name);} } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ResourceManager.cs
- RNGCryptoServiceProvider.cs
- ToolTipService.cs
- TreeBuilderXamlTranslator.cs
- ProcessModuleCollection.cs
- TriState.cs
- HttpModuleAction.cs
- RpcCryptoRequest.cs
- StructuredTypeEmitter.cs
- ContextMenu.cs
- BitmapScalingModeValidation.cs
- WSSecurityPolicy.cs
- PeerNodeTraceRecord.cs
- KeyValueSerializer.cs
- CodeDirectoryCompiler.cs
- DataGridViewCellToolTipTextNeededEventArgs.cs
- BStrWrapper.cs
- QuaternionConverter.cs
- MulticastNotSupportedException.cs
- RepeaterItemCollection.cs
- ContentValidator.cs
- WebPermission.cs
- SessionStateUtil.cs
- ExpandedWrapper.cs
- XsltOutput.cs
- GridViewColumnCollectionChangedEventArgs.cs
- MultiplexingFormatMapping.cs
- Triangle.cs
- StreamGeometry.cs
- TextSimpleMarkerProperties.cs
- AlternateView.cs
- FileUtil.cs
- ISSmlParser.cs
- QilValidationVisitor.cs
- ReceiveDesigner.xaml.cs
- DaylightTime.cs
- BasicViewGenerator.cs
- Int16Storage.cs
- TabOrder.cs
- StorageModelBuildProvider.cs
- ValidationEventArgs.cs
- SecurityTokenException.cs
- MenuCommand.cs
- BamlTreeMap.cs
- ExternalException.cs
- XPathConvert.cs
- DesignerCapabilities.cs
- SqlClientWrapperSmiStreamChars.cs
- ProgressPage.cs
- FilterException.cs
- SqlDataSourceWizardForm.cs
- AppDomain.cs
- RsaSecurityKey.cs
- QuaternionKeyFrameCollection.cs
- ReflectEventDescriptor.cs
- UIElementHelper.cs
- SubclassTypeValidator.cs
- InvalidWMPVersionException.cs
- MenuItem.cs
- ThemeDictionaryExtension.cs
- ScopelessEnumAttribute.cs
- ServiceInfoCollection.cs
- PackageRelationshipSelector.cs
- HtmlTableCell.cs
- ButtonRenderer.cs
- IndentedWriter.cs
- InputDevice.cs
- SafeCryptContextHandle.cs
- XamlTypeMapper.cs
- X509SecurityToken.cs
- PackWebRequestFactory.cs
- XmlSerializationReader.cs
- DecimalConstantAttribute.cs
- AnimationException.cs
- SqlNotificationRequest.cs
- Comparer.cs
- GridViewRow.cs
- UserPreferenceChangingEventArgs.cs
- SmtpDigestAuthenticationModule.cs
- SyndicationCategory.cs
- NullableLongAverageAggregationOperator.cs
- _LazyAsyncResult.cs
- HandlerFactoryCache.cs
- OleDbDataReader.cs
- BinaryUtilClasses.cs
- BlurBitmapEffect.cs
- ShowExpandedMultiValueConverter.cs
- RemoteWebConfigurationHostServer.cs
- SymmetricAlgorithm.cs
- PagerSettings.cs
- MgmtResManager.cs
- DataGridViewRowPostPaintEventArgs.cs
- ResourceCategoryAttribute.cs
- ProfileGroupSettingsCollection.cs
- DelegatedStream.cs
- ClientCredentialsSecurityTokenManager.cs
- CodeMemberMethod.cs
- Binding.cs
- mda.cs
- DirectoryObjectSecurity.cs