Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / RunTime / Tracking / TrackingCondition.cs / 1305376 / TrackingCondition.cs
using System; using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Text; using System.Xml; using System.Xml.Schema; using System.IO; using System.Reflection; using System.Diagnostics; using System.Runtime.Serialization; using System.Security.Permissions; using System.Globalization; //using System.Workflow.Activities; using System.Workflow.ComponentModel; using System.Workflow.Runtime; using System.Workflow.Runtime.Hosting; using Hosting = System.Workflow.Runtime.Hosting; namespace System.Workflow.Runtime.Tracking { [Serializable] public abstract class TrackingCondition { #region Properties public abstract string Value { get; set; } public abstract string Member { get; set; } public abstract ComparisonOperator Operator { get; set; } #endregion #region Internal Abstract Match Methods internal abstract bool Match(object obj); #endregion } ////// Describes critieria that is used constrain locations. /// [Serializable] public class ActivityTrackingCondition : TrackingCondition { #region Private Data Members private string _property; private string _val; private ComparisonOperator _op = ComparisonOperator.Equals; #endregion #region Constructors ////// Default constructor /// public ActivityTrackingCondition() { } ////// Constuct with a list of property names and a value. /// /// "." delineated list of property names. /// Value for the condition. ///Throws ArgumentNullException, ArgumentException. public ActivityTrackingCondition(string member, string value) { // // value can be null but the propery name(s) cannot if (null == member) throw new ArgumentNullException("member"); _property = member; SetValue(value); } #endregion #region Properties public override string Value { get { return _val; } set { SetValue(value); } } public override string Member { get { return _property; } set { _property = value; } } public override ComparisonOperator Operator { get { return _op; } set { _op = value; } } #endregion #region Internal Methods internal override bool Match(object obj) { if (null == obj) throw new ArgumentNullException("obj"); object o = PropertyHelper.GetProperty(_property, obj); if (ComparisonOperator.Equals == _op) { if (null == o) return (null == _val); else return (0 == string.Compare(o.ToString(), _val, StringComparison.Ordinal)); } else { if (null == o) return (null != _val); else return (0 != string.Compare(o.ToString(), _val, StringComparison.Ordinal)); } } #endregion #region Private Methods private void SetValue(string value) { _val = value; } #endregion } public enum ComparisonOperator { Equals = 0, NotEquals = 1, } } // 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
- _KerberosClient.cs
- CompareInfo.cs
- ProcessHostConfigUtils.cs
- TrackPoint.cs
- ChangesetResponse.cs
- TraceContextRecord.cs
- CustomErrorCollection.cs
- BindingWorker.cs
- FatalException.cs
- ColorConverter.cs
- ComPlusTypeLoader.cs
- EdmMember.cs
- DbExpressionVisitor_TResultType.cs
- SelectionRange.cs
- CellParaClient.cs
- CalendarBlackoutDatesCollection.cs
- PerformanceCountersElement.cs
- BitmapFrameEncode.cs
- ArgumentNullException.cs
- AssemblyAttributes.cs
- StrongNameIdentityPermission.cs
- RangeEnumerable.cs
- CrossSiteScriptingValidation.cs
- FormsAuthentication.cs
- PlatformCulture.cs
- JoinCqlBlock.cs
- GenerateHelper.cs
- FontStyleConverter.cs
- DesignerPainter.cs
- ConfigurationPropertyAttribute.cs
- FontFamilyValueSerializer.cs
- AccessibleObject.cs
- ResourceBinder.cs
- SafeNativeMethods.cs
- DateTimeValueSerializerContext.cs
- GroupByExpressionRewriter.cs
- SocketInformation.cs
- PassportAuthenticationEventArgs.cs
- EntityDataSourceEntityTypeFilterItem.cs
- PageVisual.cs
- DictionaryMarkupSerializer.cs
- TagMapInfo.cs
- SettingsPropertyCollection.cs
- BuildManager.cs
- CodeAttributeDeclarationCollection.cs
- SizeFConverter.cs
- TypeInfo.cs
- AutomationElementCollection.cs
- StateItem.cs
- IndicFontClient.cs
- ListChunk.cs
- COM2FontConverter.cs
- CompilerCollection.cs
- CursorInteropHelper.cs
- AssemblyAssociatedContentFileAttribute.cs
- PersonalizationProviderCollection.cs
- AddInProcess.cs
- xmlsaver.cs
- AsyncCompletedEventArgs.cs
- ModelPerspective.cs
- Base64Decoder.cs
- WebPartHeaderCloseVerb.cs
- IxmlLineInfo.cs
- WindowsAltTab.cs
- TrustLevelCollection.cs
- _SingleItemRequestCache.cs
- ObjectDataSource.cs
- AmbientValueAttribute.cs
- DataGridCommandEventArgs.cs
- FlowDocumentPage.cs
- TdsRecordBufferSetter.cs
- ChangeConflicts.cs
- HelpKeywordAttribute.cs
- TemplateXamlParser.cs
- ContentPathSegment.cs
- DbDataSourceEnumerator.cs
- ContentHostHelper.cs
- RenderingEventArgs.cs
- ErrorWrapper.cs
- Point4D.cs
- ImageField.cs
- DateTimeValueSerializerContext.cs
- LineSegment.cs
- ClientTargetSection.cs
- XmlTypeMapping.cs
- SafeArrayRankMismatchException.cs
- EpmContentDeSerializer.cs
- WebSysDescriptionAttribute.cs
- MediaSystem.cs
- RtfToXamlLexer.cs
- ViewCellSlot.cs
- Tile.cs
- MemberAssignment.cs
- MouseActionValueSerializer.cs
- HashMembershipCondition.cs
- SerializationStore.cs
- FontUnit.cs
- LambdaCompiler.Statements.cs
- AttributeEmitter.cs
- ProjectionCamera.cs