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
- CodeEntryPointMethod.cs
- PerfCounterSection.cs
- SimpleHandlerFactory.cs
- XmlSchemaAny.cs
- XmlSchemaValidator.cs
- GridEntryCollection.cs
- ImplicitInputBrush.cs
- SettingsBindableAttribute.cs
- FontEmbeddingManager.cs
- ArgumentValidation.cs
- XmlIterators.cs
- DefaultParameterValueAttribute.cs
- OutputWindow.cs
- SiteMapDataSourceView.cs
- UIElementHelper.cs
- QilExpression.cs
- _BasicClient.cs
- Line.cs
- XMLSchema.cs
- TextDataBindingHandler.cs
- TextWriter.cs
- SqlTriggerAttribute.cs
- XmlWellformedWriter.cs
- NameValueSectionHandler.cs
- BatchStream.cs
- TimeSpanOrInfiniteConverter.cs
- BinaryMessageEncoder.cs
- AssertSection.cs
- EnumValAlphaComparer.cs
- HandoffBehavior.cs
- NativeMethods.cs
- TextWriter.cs
- UnrecognizedPolicyAssertionElement.cs
- UiaCoreTypesApi.cs
- SiteMapNode.cs
- StorageModelBuildProvider.cs
- CompensatableTransactionScopeActivity.cs
- XamlWriter.cs
- ValidationError.cs
- ObjectQuery_EntitySqlExtensions.cs
- InvalidOperationException.cs
- Identity.cs
- CollectionViewGroup.cs
- EntityDataSourceWrapperCollection.cs
- ToolStripDropDownItem.cs
- PermissionSet.cs
- ConnectionProviderAttribute.cs
- ErrorFormatter.cs
- ClientCultureInfo.cs
- XmlSchemaInfo.cs
- DBCommandBuilder.cs
- Calendar.cs
- basenumberconverter.cs
- TreeNodeStyleCollection.cs
- SequenceNumber.cs
- FormattedText.cs
- MonthCalendar.cs
- FontWeightConverter.cs
- InputMethodStateChangeEventArgs.cs
- SqlParameterCollection.cs
- RequestCachingSection.cs
- BooleanConverter.cs
- DelegateTypeInfo.cs
- SemanticAnalyzer.cs
- ExpressionReplacer.cs
- SystemResourceKey.cs
- BaseAsyncResult.cs
- PrimarySelectionAdorner.cs
- RoleGroup.cs
- WebServiceParameterData.cs
- ArcSegment.cs
- AutomationTextAttribute.cs
- StandardCommands.cs
- HtmlInputText.cs
- LinearGradientBrush.cs
- ApplicationDirectory.cs
- EntityDataSourceUtil.cs
- RightsManagementPermission.cs
- ResourceSet.cs
- DataGridTableStyleMappingNameEditor.cs
- TriggerCollection.cs
- TypeInitializationException.cs
- RealProxy.cs
- CellParaClient.cs
- EventDescriptor.cs
- ListenerConstants.cs
- TrustLevel.cs
- EventProviderWriter.cs
- BaseCollection.cs
- PostBackTrigger.cs
- SourceChangedEventArgs.cs
- HtmlString.cs
- AssemblyBuilder.cs
- QueryCacheManager.cs
- ValueConversionAttribute.cs
- TypefaceMap.cs
- OneWayBindingElementImporter.cs
- ServiceMemoryGates.cs
- RelationHandler.cs
- TypefaceMap.cs