Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.Activities / System / Activities / Expressions / FieldValue.cs / 1305376 / FieldValue.cs
//---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.Activities.Expressions { using System.Activities; using System.Activities.Validation; using System.ComponentModel; using System.Reflection; public sealed class FieldValue: CodeActivity { Func operationFunction; [DefaultValue(null)] public string FieldName { get; set; } [DefaultValue(null)] public InArgument Operand { get; set; } protected override void CacheMetadata(CodeActivityMetadata metadata) { bool isRequired = false; if (typeof(TOperand).IsEnum) { metadata.AddValidationError(SR.TargetTypeCannotBeEnum(this.GetType().Name, this.DisplayName)); } if (string.IsNullOrEmpty(this.FieldName)) { metadata.AddValidationError(SR.ActivityPropertyMustBeSet("FieldName", this.DisplayName)); } else { FieldInfo fieldInfo = null; Type operandType = typeof(TOperand); fieldInfo = operandType.GetField(this.FieldName); if (fieldInfo == null) { metadata.AddValidationError(SR.MemberNotFound(this.FieldName, typeof(TOperand).Name)); } else { isRequired = !fieldInfo.IsStatic; ValidationError validationError; if (!MemberExpressionHelper.TryGenerateLinqDelegate(this.FieldName, true, fieldInfo.IsStatic, out this.operationFunction, out validationError)) { metadata.AddValidationError(validationError); } } } MemberExpressionHelper.AddOperandArgument(metadata, this.Operand, isRequired); } protected override TResult Execute(CodeActivityContext context) { TOperand operandValue = this.Operand.Get(context); return this.operationFunction(operandValue); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
![Network programming in C#, Network Programming in VB.NET, Network Programming in .NET](/images/book.jpg)
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- PkcsMisc.cs
- ValueType.cs
- Messages.cs
- XmlSerializerObjectSerializer.cs
- SapiAttributeParser.cs
- SynchronizationContext.cs
- WebPartZoneDesigner.cs
- Win32.cs
- ControlPaint.cs
- BridgeDataReader.cs
- InputReport.cs
- sqlpipe.cs
- TextElementEnumerator.cs
- XmlSchemaSimpleTypeRestriction.cs
- ContactManager.cs
- RouteItem.cs
- HostedHttpTransportManager.cs
- ToolboxItem.cs
- RayHitTestParameters.cs
- StringConverter.cs
- RelatedImageListAttribute.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- CallbackException.cs
- MetadataSerializer.cs
- DataViewListener.cs
- ConfigPathUtility.cs
- XmlNullResolver.cs
- WebResponse.cs
- SQLBytesStorage.cs
- NamespaceInfo.cs
- QuaternionRotation3D.cs
- FunctionMappingTranslator.cs
- TransactionManager.cs
- GraphicsContainer.cs
- FtpWebRequest.cs
- HtmlLinkAdapter.cs
- ReturnType.cs
- Models.cs
- DesignerOptions.cs
- UnsafeNativeMethods.cs
- BoundColumn.cs
- CollectionViewGroupInternal.cs
- PrintPageEvent.cs
- ImageDrawing.cs
- AppDomainShutdownMonitor.cs
- PrimitiveType.cs
- TemplateBamlRecordReader.cs
- MsmqInputMessagePool.cs
- EnvelopedPkcs7.cs
- TimeEnumHelper.cs
- HyperLinkColumn.cs
- PolygonHotSpot.cs
- MenuBase.cs
- OleAutBinder.cs
- BookmarkScopeManager.cs
- DataBinding.cs
- ListBoxItem.cs
- SByte.cs
- GPPOINT.cs
- NetworkInformationException.cs
- GrammarBuilder.cs
- ProfileBuildProvider.cs
- TdsParserStateObject.cs
- ToolStripProgressBar.cs
- WebEventCodes.cs
- RegexRunnerFactory.cs
- TextAction.cs
- ContractComponent.cs
- NamespaceTable.cs
- JpegBitmapDecoder.cs
- SiteMapProvider.cs
- DataControlFieldCollection.cs
- ArraySet.cs
- SmtpReplyReaderFactory.cs
- ButtonStandardAdapter.cs
- Currency.cs
- Evaluator.cs
- AppDomainFactory.cs
- TdsRecordBufferSetter.cs
- ADMembershipUser.cs
- OdbcEnvironment.cs
- PlainXmlWriter.cs
- ZipArchive.cs
- IdentifierCreationService.cs
- QueryOpeningEnumerator.cs
- SortedList.cs
- BoolExpression.cs
- ErrorCodes.cs
- BuildProvider.cs
- PlatformNotSupportedException.cs
- ElementHostAutomationPeer.cs
- RegionData.cs
- ImageCollectionCodeDomSerializer.cs
- MenuItemBinding.cs
- LayoutInformation.cs
- BrowserCapabilitiesFactoryBase.cs
- AssociationType.cs
- UIElement3D.cs
- PoisonMessageException.cs
- DetailsViewDeletedEventArgs.cs