Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / Common / AuthoringOM / Serializer / ActivityCodeDomReferenceService.cs / 1305376 / ActivityCodeDomReferenceService.cs
namespace System.Workflow.ComponentModel.Serialization { using System; using System.CodeDom; using System.ComponentModel; using System.ComponentModel.Design; using System.ComponentModel.Design.Serialization; using System.Collections; using System.Resources; using System.Workflow.ComponentModel.Design; using System.Collections.Generic; using Microsoft.CSharp; using System.Workflow.ComponentModel; using System.Workflow.ComponentModel.Compiler; using System.CodeDom.Compiler; using System.IO; using System.Reflection; using System.Diagnostics; #region Class ActivityCodeDomReferenceService ////// This class implements the IReferenceService interface and overrides the GetName /// method of the wrapped IReferenceService. /// ////// The CodeDomSerializer in System.Design uses the IReferenceService to generate an /// id for all code variables it create during serialization. By default, the GetName /// method ends up returning the QualifiedName property of an Activity, and since that /// property always contains a '.', it is an invalid variable id. This class overrides /// the GetName method to return a valid name in the case of an Activity class. /// internal sealed class ActivityCodeDomReferenceService : IReferenceService { private IReferenceService refService; public ActivityCodeDomReferenceService(IReferenceService referenceService) { this.refService = referenceService; } public object[] GetReferences(System.Type baseType) { if (refService != null) return refService.GetReferences(baseType); return null; } public object[] GetReferences() { if (refService != null) return refService.GetReferences(); return null; } public System.ComponentModel.IComponent GetComponent(object reference) { if (refService != null) return refService.GetComponent(reference); return null; } public object GetReference(string name) { if (refService != null) return refService.GetReference(name); return null; } public string GetName(object reference) { // If the object is an activity, generate a name of_ , since // the default result of GetName is the activity's QualifiedName, which includes a '.' Activity a = reference as Activity; if (a != null) return a.QualifiedName.Replace('.', '_'); if (refService != null) return refService.GetName(reference); return null; } } #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
- PathTooLongException.cs
- TemplatedEditableDesignerRegion.cs
- TypeInitializationException.cs
- SharedConnectionWorkflowTransactionService.cs
- DependentTransaction.cs
- TransformationRules.cs
- MULTI_QI.cs
- OperationFormatter.cs
- FastPropertyAccessor.cs
- TextEditorDragDrop.cs
- Rfc2898DeriveBytes.cs
- NamespaceInfo.cs
- SchemaCompiler.cs
- RuleSettings.cs
- ProgressBar.cs
- FontEmbeddingManager.cs
- TypefaceMap.cs
- SettingsPropertyValue.cs
- BeginCreateSecurityTokenRequest.cs
- SqlHelper.cs
- CookielessHelper.cs
- SrgsRule.cs
- ImmutableCollection.cs
- SqlDataSourceCache.cs
- ConfigUtil.cs
- OAVariantLib.cs
- MexBindingElement.cs
- StrokeDescriptor.cs
- CustomSignedXml.cs
- ToolStripMenuItemCodeDomSerializer.cs
- WhitespaceRule.cs
- TraceXPathNavigator.cs
- ToolStripDropTargetManager.cs
- DifferencingCollection.cs
- HttpHostedTransportConfiguration.cs
- ArgumentValue.cs
- SecurityStandardsManager.cs
- XmlDataSourceNodeDescriptor.cs
- TimerElapsedEvenArgs.cs
- ProcessingInstructionAction.cs
- SingleStorage.cs
- RolePrincipal.cs
- ApplicationSecurityManager.cs
- AlphabeticalEnumConverter.cs
- ProfileGroupSettings.cs
- Hashtable.cs
- ListViewItemMouseHoverEvent.cs
- Event.cs
- SqlNodeAnnotation.cs
- ActiveXHelper.cs
- FindCriteriaApril2005.cs
- SamlConstants.cs
- CellParaClient.cs
- MeasureItemEvent.cs
- OletxVolatileEnlistment.cs
- MonthCalendar.cs
- ExceptionCollection.cs
- DbUpdateCommandTree.cs
- DataTableMappingCollection.cs
- Empty.cs
- TextTreeTextNode.cs
- ObservableCollectionDefaultValueFactory.cs
- StyleXamlParser.cs
- BooleanSwitch.cs
- RectangleF.cs
- StickyNoteAnnotations.cs
- FloaterBaseParagraph.cs
- Propagator.Evaluator.cs
- SID.cs
- SelectionChangedEventArgs.cs
- JoinTreeNode.cs
- PenThreadWorker.cs
- VectorAnimationUsingKeyFrames.cs
- ElementHost.cs
- GregorianCalendar.cs
- _UriSyntax.cs
- DbConnectionPoolGroup.cs
- TdsParameterSetter.cs
- IdnMapping.cs
- OleDbInfoMessageEvent.cs
- MethodAccessException.cs
- NamespaceEmitter.cs
- CuspData.cs
- DataServiceBehavior.cs
- HandleInitializationContext.cs
- RSAPKCS1SignatureFormatter.cs
- Vector3D.cs
- FormViewInsertEventArgs.cs
- InkCanvasSelection.cs
- BuildResultCache.cs
- RegexGroup.cs
- PreviewPrintController.cs
- UriParserTemplates.cs
- TargetControlTypeAttribute.cs
- AdapterDictionary.cs
- X509CertificateCollection.cs
- TraceUtils.cs
- HttpCacheVary.cs
- SecUtil.cs
- ReachVisualSerializerAsync.cs