Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / Common / AuthoringOM / Serializer / XmlDocumentSurrogate.cs / 1305376 / XmlDocumentSurrogate.cs
namespace System.Workflow.ComponentModel.Serialization { using System; using System.Xml; using System.Runtime.Serialization; using System.Reflection; using System.IO; using System.Runtime.Serialization.Formatters.Binary; #region XmlDocumentSurrogate internal sealed class XmlDocumentSurrogate : ISerializationSurrogate { internal XmlDocumentSurrogate() {} void ISerializationSurrogate.GetObjectData(object obj, SerializationInfo info, StreamingContext context) { XmlDocument doc = obj as XmlDocument; if (doc == null) throw new ArgumentException(SR.GetString(SR.Error_InvalidArgumentValue), "obj"); info.AddValue("innerXml", doc.InnerXml); info.SetType(typeof(XmlDocumentReference)); } object ISerializationSurrogate.SetObjectData(object obj, SerializationInfo info, StreamingContext context, ISurrogateSelector selector) { return null; } #region XmlDocumentReference [Serializable] private sealed class XmlDocumentReference : IObjectReference { private string innerXml = string.Empty; Object IObjectReference.GetRealObject(StreamingContext context) { XmlDocument doc = new XmlDocument(); if (!string.IsNullOrEmpty(this.innerXml)) doc.InnerXml = this.innerXml; return doc; } } #endregion } #endregion } // 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
- DecoderExceptionFallback.cs
- ExceptQueryOperator.cs
- COM2ICategorizePropertiesHandler.cs
- DataMisalignedException.cs
- NameObjectCollectionBase.cs
- CompareInfo.cs
- WinEventWrap.cs
- DoubleLinkListEnumerator.cs
- CompoundFileStreamReference.cs
- StylusEditingBehavior.cs
- XmlSchemaComplexType.cs
- RoleService.cs
- ProxyWebPartManagerDesigner.cs
- ConnectorMovedEventArgs.cs
- EventMetadata.cs
- Formatter.cs
- SR.cs
- WebConfigurationManager.cs
- PropertyToken.cs
- HybridDictionary.cs
- RSAOAEPKeyExchangeDeformatter.cs
- RequestCacheValidator.cs
- TextEditorSpelling.cs
- BitmapDecoder.cs
- OleCmdHelper.cs
- AppSettingsReader.cs
- OdbcUtils.cs
- NavigationCommands.cs
- WebPartConnectionsCloseVerb.cs
- ComponentResourceKeyConverter.cs
- EndEvent.cs
- X509Chain.cs
- UserControlBuildProvider.cs
- Debug.cs
- WebBrowser.cs
- Image.cs
- AudioFormatConverter.cs
- HierarchicalDataBoundControl.cs
- Token.cs
- CompareInfo.cs
- BaseComponentEditor.cs
- XmlElement.cs
- ContextMenuService.cs
- ProxyWebPart.cs
- FormsAuthenticationUser.cs
- HtmlTable.cs
- SemanticBasicElement.cs
- ScrollChrome.cs
- WebPermission.cs
- SequenceDesigner.cs
- COSERVERINFO.cs
- BufferBuilder.cs
- FixedPageProcessor.cs
- SqlCommandBuilder.cs
- SafeNativeMethods.cs
- QilVisitor.cs
- FileVersion.cs
- ValidatingPropertiesEventArgs.cs
- CodeEventReferenceExpression.cs
- TextEffectCollection.cs
- Normalizer.cs
- TextDecorationCollectionConverter.cs
- InputDevice.cs
- RelatedPropertyManager.cs
- QueryExpr.cs
- ComPersistableTypeElementCollection.cs
- RC2CryptoServiceProvider.cs
- X509ChainPolicy.cs
- TransactionValidationBehavior.cs
- ConstNode.cs
- Membership.cs
- SimpleLine.cs
- PrefixQName.cs
- ImageBrush.cs
- ListBoxItemWrapperAutomationPeer.cs
- MenuItemCollection.cs
- BitmapEffectvisualstate.cs
- TextEditorLists.cs
- FixedSOMTableRow.cs
- ScrollViewer.cs
- PrintingPermissionAttribute.cs
- InstanceNotReadyException.cs
- FontFamily.cs
- JsonByteArrayDataContract.cs
- CultureTableRecord.cs
- DataContractSerializerOperationGenerator.cs
- BufferedWebEventProvider.cs
- XmlNamespaceDeclarationsAttribute.cs
- UndoEngine.cs
- WebPartDisplayModeEventArgs.cs
- SettingsAttributes.cs
- ChooseAction.cs
- _SslSessionsCache.cs
- TypeUtil.cs
- ObjectListCommand.cs
- CollectionContainer.cs
- SafeFileHandle.cs
- HandleExceptionArgs.cs
- CommandValueSerializer.cs
- RadioButtonFlatAdapter.cs