Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / Common / AuthoringOM / Serializer / CompositeActivityMarkupSerializer.cs / 1305376 / CompositeActivityMarkupSerializer.cs
namespace System.Workflow.ComponentModel.Serialization { using System; using System.Reflection; using System.Collections; using System.Collections.Generic; using System.Workflow.ComponentModel.Design; using System.Xml; #region Class CompositeActivityMarkupSerializer public class CompositeActivityMarkupSerializer : ActivityMarkupSerializer { internal override void OnBeforeSerializeContents(WorkflowMarkupSerializationManager serializationManager, object obj) { base.OnBeforeSerializeContents(serializationManager, obj); //For root activity we will go through all the nested activities and put the namespaces at the top level CompositeActivity compositeActivity = obj as CompositeActivity; XmlWriter writer = serializationManager.WorkflowMarkupStack[typeof(XmlWriter)] as XmlWriter; if (compositeActivity.Parent == null && writer != null) { DictionarywrittenMappings = new Dictionary (); string prefix = String.Empty; XmlQualifiedName xmlQualifiedName = serializationManager.GetXmlQualifiedName(compositeActivity.GetType(), out prefix); writtenMappings.Add(xmlQualifiedName.Namespace, compositeActivity); foreach (Activity containedActivity in Helpers.GetNestedActivities(compositeActivity)) { prefix = String.Empty; xmlQualifiedName = serializationManager.GetXmlQualifiedName(containedActivity.GetType(), out prefix); if (!writtenMappings.ContainsKey(xmlQualifiedName.Namespace)) { writer.WriteAttributeString("xmlns", prefix, null, xmlQualifiedName.Namespace); writtenMappings.Add(xmlQualifiedName.Namespace, containedActivity); } } } } } #endregion } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. namespace System.Workflow.ComponentModel.Serialization { using System; using System.Reflection; using System.Collections; using System.Collections.Generic; using System.Workflow.ComponentModel.Design; using System.Xml; #region Class CompositeActivityMarkupSerializer public class CompositeActivityMarkupSerializer : ActivityMarkupSerializer { internal override void OnBeforeSerializeContents(WorkflowMarkupSerializationManager serializationManager, object obj) { base.OnBeforeSerializeContents(serializationManager, obj); //For root activity we will go through all the nested activities and put the namespaces at the top level CompositeActivity compositeActivity = obj as CompositeActivity; XmlWriter writer = serializationManager.WorkflowMarkupStack[typeof(XmlWriter)] as XmlWriter; if (compositeActivity.Parent == null && writer != null) { Dictionary writtenMappings = new Dictionary (); string prefix = String.Empty; XmlQualifiedName xmlQualifiedName = serializationManager.GetXmlQualifiedName(compositeActivity.GetType(), out prefix); writtenMappings.Add(xmlQualifiedName.Namespace, compositeActivity); foreach (Activity containedActivity in Helpers.GetNestedActivities(compositeActivity)) { prefix = String.Empty; xmlQualifiedName = serializationManager.GetXmlQualifiedName(containedActivity.GetType(), out prefix); if (!writtenMappings.ContainsKey(xmlQualifiedName.Namespace)) { writer.WriteAttributeString("xmlns", prefix, null, xmlQualifiedName.Namespace); writtenMappings.Add(xmlQualifiedName.Namespace, containedActivity); } } } } } #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
- AlgoModule.cs
- WebBrowserHelper.cs
- TransactionBehavior.cs
- MultilineStringConverter.cs
- BitmapFrameEncode.cs
- QueryResult.cs
- _SingleItemRequestCache.cs
- TransformerInfoCollection.cs
- CacheModeConverter.cs
- SafeCoTaskMem.cs
- _UriSyntax.cs
- ManualWorkflowSchedulerService.cs
- ClassDataContract.cs
- Registry.cs
- XmlElementAttribute.cs
- SoapSchemaImporter.cs
- EndCreateSecurityTokenRequest.cs
- InvalidEnumArgumentException.cs
- Mapping.cs
- ClassicBorderDecorator.cs
- EntityCommand.cs
- PackagePartCollection.cs
- SqlGenerator.cs
- CodeParameterDeclarationExpression.cs
- BuildManagerHost.cs
- SingleObjectCollection.cs
- PartEditor.cs
- InArgument.cs
- DrawListViewColumnHeaderEventArgs.cs
- ConnectionInterfaceCollection.cs
- VerbConverter.cs
- JsonDeserializer.cs
- RepeaterItemCollection.cs
- PerformanceCounters.cs
- ClassImporter.cs
- WindowsSysHeader.cs
- OrderByQueryOptionExpression.cs
- IncrementalReadDecoders.cs
- RuntimeConfig.cs
- ObjectStateManager.cs
- ObjectDataSourceDisposingEventArgs.cs
- MethodCallExpression.cs
- InputProcessorProfiles.cs
- ScrollChrome.cs
- FileDetails.cs
- ChildDocumentBlock.cs
- SettingsPropertyWrongTypeException.cs
- RepeaterItemEventArgs.cs
- TypeSystem.cs
- PlanCompilerUtil.cs
- DependencyObjectPropertyDescriptor.cs
- DesignTimeTemplateParser.cs
- ECDsaCng.cs
- HelpProvider.cs
- CodeAttributeDeclaration.cs
- AsyncPostBackTrigger.cs
- Table.cs
- ProviderBase.cs
- DataRecord.cs
- Column.cs
- XmlSchemaObject.cs
- HandlerElementCollection.cs
- EdmFunction.cs
- DataList.cs
- DeviceContext2.cs
- ViewBase.cs
- TextSelectionHelper.cs
- WindowsStreamSecurityElement.cs
- _ListenerRequestStream.cs
- GraphicsContainer.cs
- LogEntryUtils.cs
- UIPermission.cs
- UserControlBuildProvider.cs
- Latin1Encoding.cs
- ContextStaticAttribute.cs
- HttpsChannelFactory.cs
- VisualCollection.cs
- FormViewAutoFormat.cs
- LogicalTreeHelper.cs
- ToolStripLabel.cs
- TypedTableGenerator.cs
- VirtualizingPanel.cs
- SharedStatics.cs
- ExclusiveHandleList.cs
- NGCSerializer.cs
- XdrBuilder.cs
- WSDualHttpSecurityElement.cs
- SystemEvents.cs
- DefaultEventAttribute.cs
- ListViewCommandEventArgs.cs
- MostlySingletonList.cs
- ImpersonateTokenRef.cs
- GeneralTransform2DTo3DTo2D.cs
- MetadataArtifactLoaderFile.cs
- BitmapEffectOutputConnector.cs
- DataSourceXmlElementAttribute.cs
- Debug.cs
- HtmlInputText.cs
- NavigationPropertyAccessor.cs
- Point3DKeyFrameCollection.cs