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
- AssemblyResourceLoader.cs
- ComponentChangingEvent.cs
- ResolveMatchesMessage11.cs
- FormsAuthenticationUserCollection.cs
- ExpandCollapseProviderWrapper.cs
- InputMethodStateChangeEventArgs.cs
- DataExpression.cs
- WebPartConnectVerb.cs
- CornerRadius.cs
- DPAPIProtectedConfigurationProvider.cs
- ClientRoleProvider.cs
- UserUseLicenseDictionaryLoader.cs
- Wizard.cs
- VisualTransition.cs
- WorkItem.cs
- TextEffect.cs
- UndoEngine.cs
- PropertyBuilder.cs
- DataSourceCache.cs
- Bezier.cs
- StatusBarItem.cs
- StateInitialization.cs
- Model3D.cs
- WebPartsSection.cs
- KerberosRequestorSecurityToken.cs
- XmlLanguageConverter.cs
- AppSecurityManager.cs
- ObjectList.cs
- TrackingMemoryStream.cs
- WindowsSolidBrush.cs
- SqlServices.cs
- OletxTransactionManager.cs
- ExceptionUtility.cs
- LinqDataSource.cs
- CollectionBuilder.cs
- FieldBuilder.cs
- CreateRefExpr.cs
- BitmapImage.cs
- Wizard.cs
- PriorityItem.cs
- X509Certificate.cs
- DataSourceSelectArguments.cs
- SurrogateEncoder.cs
- AttachmentCollection.cs
- ByteStreamMessageUtility.cs
- NullReferenceException.cs
- FormsAuthenticationEventArgs.cs
- DesignerActionHeaderItem.cs
- ParagraphResult.cs
- Options.cs
- Type.cs
- PathFigure.cs
- StrokeCollectionDefaultValueFactory.cs
- FunctionImportMapping.ReturnTypeRenameMapping.cs
- COM2ExtendedUITypeEditor.cs
- BroadcastEventHelper.cs
- Package.cs
- HttpSocketManager.cs
- TimeSpanConverter.cs
- CapabilitiesAssignment.cs
- Operand.cs
- BufferedReadStream.cs
- SoapAttributeOverrides.cs
- ConfigPathUtility.cs
- SystemTcpConnection.cs
- SingleQueryOperator.cs
- RepeaterDesigner.cs
- HtmlTableCell.cs
- TypeInfo.cs
- SessionStateItemCollection.cs
- xmlsaver.cs
- FrugalMap.cs
- SafeCryptoKeyHandle.cs
- TextEditorSpelling.cs
- Policy.cs
- NavigationWindowAutomationPeer.cs
- CompModSwitches.cs
- KoreanCalendar.cs
- UnmanagedMemoryStream.cs
- parserscommon.cs
- EncryptedType.cs
- SynchronizedDispatch.cs
- XamlToRtfWriter.cs
- UnknownWrapper.cs
- AuthorizationPolicyTypeElement.cs
- CustomErrorCollection.cs
- ObfuscationAttribute.cs
- ReflectTypeDescriptionProvider.cs
- DropShadowBitmapEffect.cs
- WebPartCatalogAddVerb.cs
- CroppedBitmap.cs
- OperationInvokerBehavior.cs
- keycontainerpermission.cs
- PermissionToken.cs
- DBParameter.cs
- AutomationProperty.cs
- OdbcPermission.cs
- XmlCollation.cs
- Configuration.cs
- QueryOutputWriter.cs