Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / Activities / Policy.cs / 1305376 / Policy.cs
namespace System.Workflow.Activities { using System; using System.Text; using System.Reflection; using System.Collections; using System.CodeDom; using System.ComponentModel; using System.ComponentModel.Design; using System.ComponentModel.Design.Serialization; using System.Drawing; using System.Workflow.ComponentModel; using System.Workflow.ComponentModel.Design; using System.Collections.Generic; using System.Workflow.Activities.Rules; using System.Workflow.Activities.Rules.Design; using System.Workflow.Runtime; using System.Workflow.ComponentModel.Compiler; using System.Drawing.Design; using System.Workflow.Activities.Common; #region Class Policy [SRDescription(SR.PolicyActivityDescription)] [ToolboxBitmap(typeof(PolicyActivity), "Resources.Rule.png")] [ToolboxItem(typeof(ActivityToolboxItem))] [Designer(typeof(PolicyDesigner), typeof(IDesigner))] [SRCategory(SR.Standard)] public sealed class PolicyActivity : Activity { #region Public Dependency Properties public static readonly DependencyProperty RuleSetReferenceProperty = DependencyProperty.Register("RuleSetReference", typeof(RuleSetReference), typeof(PolicyActivity), new PropertyMetadata(DependencyPropertyOptions.Metadata, new Attribute[] { new ValidationOptionAttribute(ValidationOption.Required) })); #endregion #region Constructors public PolicyActivity() { } public PolicyActivity(string name) : base(name) { } #endregion protected override void Initialize(IServiceProvider provider) { // if there is no parent, then there will be no validation of RuleSetReference // as well, there will be no RuleDefinitions if (this.Parent == null) throw new InvalidOperationException(SR.GetString(SR.Error_MustHaveParent)); base.Initialize(provider); } protected override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext) { if (executionContext == null) throw new ArgumentNullException("executionContext"); Activity declaringActivity = Helpers.GetDeclaringActivity(this); if (declaringActivity == null) declaringActivity = Helpers.GetRootActivity(this); RuleDefinitions ruleDefinitions = (RuleDefinitions)declaringActivity.GetValue(RuleDefinitions.RuleDefinitionsProperty); if (ruleDefinitions != null) { RuleSet ruleSet = ruleDefinitions.RuleSets[this.RuleSetReference.RuleSetName]; if (ruleSet != null) { ruleSet.Execute(declaringActivity, executionContext); } } return ActivityExecutionStatus.Closed; } [SRDescription(SR.RuleSetDescription)] [MergableProperty(false)] public RuleSetReference RuleSetReference { get { return (RuleSetReference)base.GetValue(RuleSetReferenceProperty); } set { base.SetValue(RuleSetReferenceProperty, value); } } } #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
- BreakSafeBase.cs
- XmlSchemaSimpleContent.cs
- SwitchDesigner.xaml.cs
- XmlTextWriter.cs
- XmlSchemaCollection.cs
- ValidatingReaderNodeData.cs
- WebPartTransformerCollection.cs
- UIElementPropertyUndoUnit.cs
- EventRecord.cs
- HyperLinkColumn.cs
- XmlBinaryReader.cs
- VariableQuery.cs
- AssemblySettingAttributes.cs
- PeerEndPoint.cs
- WorkflowApplicationIdleEventArgs.cs
- AnonymousIdentificationModule.cs
- ExtensionFile.cs
- TdsParameterSetter.cs
- CodePageUtils.cs
- AuthenticationServiceManager.cs
- ForwardPositionQuery.cs
- DoubleCollection.cs
- Stack.cs
- TTSVoice.cs
- CallSiteHelpers.cs
- AnyAllSearchOperator.cs
- DBDataPermission.cs
- ObfuscationAttribute.cs
- DATA_BLOB.cs
- AlternateViewCollection.cs
- Rectangle.cs
- PromptBuilder.cs
- TemplatedControlDesigner.cs
- LocatorPartList.cs
- MultiSelectRootGridEntry.cs
- ReadOnlyCollectionBase.cs
- Update.cs
- InstanceLockQueryResult.cs
- DataGridViewRowDividerDoubleClickEventArgs.cs
- SettingsAttributeDictionary.cs
- EpmCustomContentSerializer.cs
- HybridWebProxyFinder.cs
- RegexCompiler.cs
- DeploymentSection.cs
- Int32CollectionConverter.cs
- _BaseOverlappedAsyncResult.cs
- ImageFormatConverter.cs
- Drawing.cs
- login.cs
- EntitySqlQueryCacheEntry.cs
- WindowsProgressbar.cs
- ObfuscationAttribute.cs
- PrintSchema.cs
- ColorConvertedBitmap.cs
- ISFClipboardData.cs
- AssemblyAttributes.cs
- ScriptManagerProxy.cs
- NetSectionGroup.cs
- WebBrowserUriTypeConverter.cs
- WorkflowMarkupSerializer.cs
- TextRunTypographyProperties.cs
- NonVisualControlAttribute.cs
- CompositeCollectionView.cs
- WebServicesInteroperability.cs
- IERequestCache.cs
- ClipboardProcessor.cs
- RadioButtonStandardAdapter.cs
- WebPartCloseVerb.cs
- CngAlgorithm.cs
- RelationshipEndMember.cs
- ObjectListShowCommandsEventArgs.cs
- Base64Stream.cs
- HierarchicalDataSourceConverter.cs
- ConstantSlot.cs
- TextDocumentView.cs
- HotSpotCollection.cs
- BindingContext.cs
- ZipIOCentralDirectoryDigitalSignature.cs
- AccessibleObject.cs
- _LoggingObject.cs
- AutomationElement.cs
- PageCatalogPartDesigner.cs
- SpecialNameAttribute.cs
- LineServicesCallbacks.cs
- LicenseContext.cs
- CommandPlan.cs
- UIInitializationException.cs
- MemoryStream.cs
- DesignerSerializerAttribute.cs
- FlowDocument.cs
- ListComponentEditor.cs
- LogicalMethodInfo.cs
- SplayTreeNode.cs
- CheckoutException.cs
- WebPartChrome.cs
- ValidationSummary.cs
- ConfigsHelper.cs
- Journaling.cs
- HelpProvider.cs
- FlowDocumentView.cs