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
- PersistenceProviderFactory.cs
- DSGeneratorProblem.cs
- TimeZoneNotFoundException.cs
- ProxyManager.cs
- FixedSOMFixedBlock.cs
- InkSerializer.cs
- BoolLiteral.cs
- RemotingException.cs
- SiteMembershipCondition.cs
- SqlFacetAttribute.cs
- XMLUtil.cs
- BindingExpression.cs
- figurelengthconverter.cs
- SqlDuplicator.cs
- SqlMetaData.cs
- EventProvider.cs
- HitTestWithPointDrawingContextWalker.cs
- XmlCodeExporter.cs
- RenderingBiasValidation.cs
- Stylesheet.cs
- LinkUtilities.cs
- IdentityNotMappedException.cs
- FontSource.cs
- SymLanguageType.cs
- InstanceData.cs
- LingerOption.cs
- SimpleTextLine.cs
- X500Name.cs
- ThreadAbortException.cs
- XPathDescendantIterator.cs
- TypedDataSourceCodeGenerator.cs
- StateMachine.cs
- RightsManagementInformation.cs
- BitmapEffectInput.cs
- InternalConfigEventArgs.cs
- RewritingPass.cs
- EventListenerClientSide.cs
- TableLayoutStyle.cs
- Container.cs
- MobileResource.cs
- CompositionAdorner.cs
- WindowsTreeView.cs
- StoreItemCollection.Loader.cs
- Color.cs
- VoiceInfo.cs
- LateBoundBitmapDecoder.cs
- FastEncoder.cs
- LinkConverter.cs
- VisualTreeUtils.cs
- MimeFormImporter.cs
- log.cs
- SemanticTag.cs
- IDictionary.cs
- Task.cs
- TreeBuilderXamlTranslator.cs
- SoapIgnoreAttribute.cs
- ResourcePermissionBaseEntry.cs
- FixedSOMTable.cs
- TimeSpanConverter.cs
- PrintEvent.cs
- WebPartUserCapability.cs
- WebPartZoneBase.cs
- SubtreeProcessor.cs
- TemplateModeChangedEventArgs.cs
- CharAnimationBase.cs
- complextypematerializer.cs
- IndexedGlyphRun.cs
- CalendarDataBindingHandler.cs
- NotFiniteNumberException.cs
- Helpers.cs
- ObjectAssociationEndMapping.cs
- HttpResponse.cs
- RunClient.cs
- CachedRequestParams.cs
- IPAddress.cs
- SiteMapNodeCollection.cs
- Attributes.cs
- OpCellTreeNode.cs
- TableLayoutStyleCollection.cs
- WmfPlaceableFileHeader.cs
- SimpleBitVector32.cs
- QilList.cs
- AssociativeAggregationOperator.cs
- Line.cs
- WorkflowMessageEventArgs.cs
- DragAssistanceManager.cs
- securitycriticaldataClass.cs
- Matrix3DStack.cs
- UnsafeNativeMethods.cs
- ExpressionPrefixAttribute.cs
- TextTreeInsertUndoUnit.cs
- ScriptManager.cs
- GeometryModel3D.cs
- FixedTextSelectionProcessor.cs
- MobileListItemCollection.cs
- HTTP_SERVICE_CONFIG_URLACL_KEY.cs
- DefaultBinder.cs
- PlanCompiler.cs
- StackSpiller.Bindings.cs
- AccessDataSource.cs