Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / Common / AuthoringOM / Serializer / ActivityCodeDomSerializer.cs / 1305376 / ActivityCodeDomSerializer.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 ActivityCodeDomSerializer
public class ActivityCodeDomSerializer : DependencyObjectCodeDomSerializer
{
public static readonly DependencyProperty MarkupFileNameProperty = DependencyProperty.RegisterAttached("MarkupFileName", typeof(string), typeof(ActivityCodeDomSerializer), new PropertyMetadata(null, new Attribute[] { new DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden) }));
public ActivityCodeDomSerializer()
{
}
#region CodeDomSerializer overrides
public override object Serialize(IDesignerSerializationManager manager, object obj)
{
if (manager == null)
throw new ArgumentNullException("manager");
if (obj == null)
throw new ArgumentNullException("obj");
Activity activity = obj as Activity;
if (activity == null)
throw new ArgumentException(SR.GetString(SR.Error_UnexpectedArgumentType, typeof(Activity).FullName), "obj");
if (Helpers.IsActivityLocked(activity))
return null;
CodeStatementCollection retVal = base.Serialize(manager, activity) as CodeStatementCollection;
if (retVal != null)
{
Activity rootActivity = Helpers.GetRootActivity(activity);
if (rootActivity != null && rootActivity.GetValue(ActivityCodeDomSerializer.MarkupFileNameProperty) != null &&
(int)activity.GetValue(ActivityMarkupSerializer.StartLineProperty) != -1)
{
foreach (CodeStatement statement in retVal)
{
if (!(statement is CodeCommentStatement))
statement.LinePragma = new CodeLinePragma((string)rootActivity.GetValue(ActivityCodeDomSerializer.MarkupFileNameProperty), Math.Max((int)activity.GetValue(ActivityMarkupSerializer.StartLineProperty), 1));
}
}
}
return retVal;
}
#endregion
}
#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
- RegionIterator.cs
- ClientSideProviderDescription.cs
- ListViewHitTestInfo.cs
- OleCmdHelper.cs
- ResourcePool.cs
- Internal.cs
- webbrowsersite.cs
- UserNamePasswordValidator.cs
- TextElementCollectionHelper.cs
- ParameterCollection.cs
- SQLGuidStorage.cs
- MultiTargetingUtil.cs
- ObjectTokenCategory.cs
- DivideByZeroException.cs
- BamlTreeMap.cs
- QueryCursorEventArgs.cs
- XmlSchemaImporter.cs
- NameSpaceExtractor.cs
- _NTAuthentication.cs
- ResourceDictionary.cs
- XmlBinaryWriter.cs
- StringAnimationUsingKeyFrames.cs
- SqlFunctionAttribute.cs
- CollectionViewProxy.cs
- CryptoApi.cs
- MenuItemBindingCollection.cs
- Hash.cs
- DoubleLink.cs
- ConsumerConnectionPoint.cs
- ForEachAction.cs
- ControlUtil.cs
- DBDataPermission.cs
- StyleConverter.cs
- OverlappedAsyncResult.cs
- Models.cs
- HttpException.cs
- ReadWriteSpinLock.cs
- RegexInterpreter.cs
- FaultBookmark.cs
- BufferedGraphicsManager.cs
- WebPartsPersonalizationAuthorization.cs
- MappingSource.cs
- HandlerBase.cs
- _AutoWebProxyScriptWrapper.cs
- DbConnectionPool.cs
- TimelineClockCollection.cs
- EntryIndex.cs
- SqlDataSourceCache.cs
- RequestCacheEntry.cs
- ChangeNode.cs
- InputBindingCollection.cs
- MinMaxParagraphWidth.cs
- IdentityModelStringsVersion1.cs
- IndexedDataBuffer.cs
- KeyValuePair.cs
- XmlExpressionDumper.cs
- LinkedResourceCollection.cs
- ConfigPathUtility.cs
- ItemContainerGenerator.cs
- HostingEnvironment.cs
- _TLSstream.cs
- Int64AnimationUsingKeyFrames.cs
- CollectionsUtil.cs
- ApplicationSecurityInfo.cs
- XmlTextReader.cs
- WebEncodingValidator.cs
- XmlSchemaImport.cs
- PenContext.cs
- FontStyles.cs
- BaseResourcesBuildProvider.cs
- WSTrust.cs
- MsmqOutputChannel.cs
- TranslateTransform.cs
- Int32CollectionConverter.cs
- SignatureDescription.cs
- PropertyInfoSet.cs
- Parser.cs
- StateMachine.cs
- FixedDocumentSequencePaginator.cs
- StrongName.cs
- ControlTemplate.cs
- CodeExpressionCollection.cs
- DictionaryItemsCollection.cs
- SlipBehavior.cs
- DefaultIfEmptyQueryOperator.cs
- XmlDesigner.cs
- XamlInt32CollectionSerializer.cs
- EpmSourceTree.cs
- TextBreakpoint.cs
- XmlIlTypeHelper.cs
- QilUnary.cs
- DataControlFieldHeaderCell.cs
- SamlAuthorityBinding.cs
- InstancePersistence.cs
- RawStylusInputReport.cs
- TimeEnumHelper.cs
- DecimalMinMaxAggregationOperator.cs
- RenderCapability.cs
- PointHitTestParameters.cs
- OleDbCommand.cs