Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / Serialization / System / Runtime / Serialization / XmlSerializableWriter.cs / 1305376 / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- OutputCacheProfileCollection.cs
- HttpCookieCollection.cs
- MDIClient.cs
- RouteItem.cs
- XMLUtil.cs
- RootBrowserWindow.cs
- HttpPostProtocolImporter.cs
- DropTarget.cs
- BevelBitmapEffect.cs
- WorkflowNamespace.cs
- RawStylusSystemGestureInputReport.cs
- SmtpCommands.cs
- DirectoryObjectSecurity.cs
- UIElementCollection.cs
- UIServiceHelper.cs
- FormsAuthenticationUser.cs
- FrugalList.cs
- ScriptResourceInfo.cs
- CursorConverter.cs
- PropertyGrid.cs
- ComponentResourceKeyConverter.cs
- Model3D.cs
- BitmapEffectInputData.cs
- HttpSysSettings.cs
- ProxyOperationRuntime.cs
- DrawingGroupDrawingContext.cs
- DbConnectionPool.cs
- CreateUserErrorEventArgs.cs
- WebServiceMethodData.cs
- FilterEventArgs.cs
- DictionaryContent.cs
- ModuleConfigurationInfo.cs
- WorkflowApplicationException.cs
- PolyBezierSegment.cs
- IPPacketInformation.cs
- Effect.cs
- FormDesigner.cs
- DesignerLoader.cs
- LineProperties.cs
- X509CertificateChain.cs
- XmlAttributes.cs
- RelatedView.cs
- TdsEnums.cs
- ExcCanonicalXml.cs
- WebBaseEventKeyComparer.cs
- PolyBezierSegmentFigureLogic.cs
- TextContainerHelper.cs
- Literal.cs
- MethodCallTranslator.cs
- BitmapScalingModeValidation.cs
- ConvertersCollection.cs
- HttpVersion.cs
- XmlWrappingReader.cs
- MobileRedirect.cs
- WebPartCancelEventArgs.cs
- RootContext.cs
- PathSegmentCollection.cs
- ObjectConverter.cs
- View.cs
- ImportDesigner.xaml.cs
- QilXmlWriter.cs
- DragCompletedEventArgs.cs
- DefaultValueConverter.cs
- ImplicitInputBrush.cs
- DiscoveryDocument.cs
- GroupItem.cs
- DecoderFallbackWithFailureFlag.cs
- ArgumentFixer.cs
- SimpleNameService.cs
- HandleRef.cs
- Solver.cs
- ListViewItemSelectionChangedEvent.cs
- ToolStripComboBox.cs
- MemoryRecordBuffer.cs
- BitmapEffectDrawingContextState.cs
- _CacheStreams.cs
- BCryptSafeHandles.cs
- CompareValidator.cs
- AddInSegmentDirectoryNotFoundException.cs
- ViewPort3D.cs
- DocumentOutline.cs
- TextSearch.cs
- SiteMapNodeCollection.cs
- CancelRequestedQuery.cs
- Preprocessor.cs
- MgmtResManager.cs
- CodeBinaryOperatorExpression.cs
- List.cs
- Point3DAnimationUsingKeyFrames.cs
- cache.cs
- TypeUsage.cs
- TreeViewBindingsEditor.cs
- UserInitiatedNavigationPermission.cs
- ClrPerspective.cs
- Int32KeyFrameCollection.cs
- Margins.cs
- XmlObjectSerializerWriteContextComplexJson.cs
- SqlTrackingQuery.cs
- ReadContentAsBinaryHelper.cs
- TextEditorCharacters.cs