Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.Activities / System / Activities / Validation / Constraint.cs / 1305376 / Constraint.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Activities.Validation { using System; using System.Collections.Generic; using System.Diagnostics.CodeAnalysis; using System.Runtime; using System.Windows.Markup; using System.Collections.ObjectModel; public abstract class Constraint : NativeActivity { public const string ValidationErrorListPropertyName = "System.Activities.Validation.Constraint.ValidationErrorList"; internal const string ToValidateArgumentName = "ToValidate"; internal const string ValidationErrorListArgumentName = "ViolationList"; internal const string ToValidateContextArgumentName = "ToValidateContext"; RuntimeArgument toValidate; RuntimeArgument violationList; RuntimeArgument toValidateContext; internal Constraint() { this.toValidate = new RuntimeArgument(ToValidateArgumentName, typeof(object), ArgumentDirection.In); this.toValidateContext = new RuntimeArgument(ToValidateContextArgumentName, typeof(ValidationContext), ArgumentDirection.In); this.violationList = new RuntimeArgument(ValidationErrorListArgumentName, typeof(IList), ArgumentDirection.Out); } public static void AddValidationError(NativeActivityContext context, ValidationError error) { List validationErrorList = context.Properties.Find(ValidationErrorListPropertyName) as List ; if (validationErrorList == null) { throw FxTrace.Exception.AsError(new InvalidOperationException(SR.AddValidationErrorMustBeCalledFromConstraint(typeof(Constraint).Name))); } validationErrorList.Add(error); } protected override void CacheMetadata(NativeActivityMetadata metadata) { metadata.SetArgumentsCollection( new Collection { this.toValidate, this.violationList, this.toValidateContext }); } protected override void Execute(NativeActivityContext context) { object objectToValidate = this.toValidate.Get
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Translator.cs
- ReachPageContentCollectionSerializer.cs
- SvcMapFileLoader.cs
- ButtonBase.cs
- IgnoreFlushAndCloseStream.cs
- BaseDataBoundControl.cs
- ClientTarget.cs
- SqlRewriteScalarSubqueries.cs
- SurrogateDataContract.cs
- AutoGeneratedFieldProperties.cs
- PointConverter.cs
- MenuItem.cs
- EntityContainer.cs
- Int32RectValueSerializer.cs
- RootBrowserWindowAutomationPeer.cs
- DataObject.cs
- Logging.cs
- HttpValueCollection.cs
- WindowsPrincipal.cs
- CqlErrorHelper.cs
- DataSvcMapFileSerializer.cs
- PersianCalendar.cs
- MouseBinding.cs
- ByteStreamGeometryContext.cs
- CounterCreationData.cs
- SelectorItemAutomationPeer.cs
- BindingList.cs
- HandleDictionary.cs
- control.ime.cs
- DataGridViewCellMouseEventArgs.cs
- ControlParameter.cs
- ThreadInterruptedException.cs
- TreeNodeMouseHoverEvent.cs
- SkipQueryOptionExpression.cs
- VectorConverter.cs
- WindowsButton.cs
- WebPartActionVerb.cs
- StatusBarDrawItemEvent.cs
- ChannelSinkStacks.cs
- FlowLayout.cs
- DesignerView.Commands.cs
- BooleanStorage.cs
- RegexTree.cs
- InputLanguageProfileNotifySink.cs
- MemoryMappedFile.cs
- SelectedGridItemChangedEvent.cs
- BufferedReadStream.cs
- CodeLinePragma.cs
- MouseCaptureWithinProperty.cs
- LogoValidationException.cs
- Math.cs
- ContextInformation.cs
- LinkButton.cs
- SemanticValue.cs
- SecureConversationVersion.cs
- CodeTypeParameter.cs
- DataGridViewButtonCell.cs
- CompilationLock.cs
- AliasGenerator.cs
- BindingMAnagerBase.cs
- TextRangeEditTables.cs
- XmlException.cs
- WhitespaceRuleReader.cs
- NativeMethods.cs
- SettingsPropertyValueCollection.cs
- ListBindingHelper.cs
- SqlClientMetaDataCollectionNames.cs
- Exception.cs
- ReadWriteObjectLock.cs
- DbModificationCommandTree.cs
- EntityDataSourceChangingEventArgs.cs
- IISUnsafeMethods.cs
- SevenBitStream.cs
- COM2ComponentEditor.cs
- ErrorWebPart.cs
- NotImplementedException.cs
- DataGridItem.cs
- AudioSignalProblemOccurredEventArgs.cs
- ServicesUtilities.cs
- MetadataSerializer.cs
- Merger.cs
- ValueTable.cs
- WebPartTransformer.cs
- EventSourceCreationData.cs
- PointCollectionConverter.cs
- mediapermission.cs
- RadioButtonStandardAdapter.cs
- SkipQueryOptionExpression.cs
- XmlIncludeAttribute.cs
- ArraySubsetEnumerator.cs
- ClosableStream.cs
- XmlSchema.cs
- Polygon.cs
- CodeAttributeDeclaration.cs
- Splitter.cs
- COAUTHINFO.cs
- LayoutEngine.cs
- Stack.cs
- SymLanguageVendor.cs
- ParentQuery.cs