Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.Activities / System / Activities / Expressions / BinaryExpressionHelper.cs / 1305376 / BinaryExpressionHelper.cs
//---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.Activities.Expressions { using System.Activities.Validation; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Linq.Expressions; using System.Runtime; static class BinaryExpressionHelper { public static void OnGetArguments(CodeActivityMetadata metadata, InArgument left, InArgument right) { RuntimeArgument rightArgument = new RuntimeArgument("Right", typeof(TRight), ArgumentDirection.In, true); metadata.Bind(right, rightArgument); RuntimeArgument leftArgument = new RuntimeArgument("Left", typeof(TLeft), ArgumentDirection.In, true); metadata.Bind(left, leftArgument); metadata.SetArgumentsCollection( new Collection { rightArgument, leftArgument }); } public static bool TryGenerateLinqDelegate (ExpressionType operatorType, out Func function, out ValidationError validationError) { function = null; validationError = null; ParameterExpression leftParameter = Expression.Parameter(typeof(TLeft), "left"); ParameterExpression rightParameter = Expression.Parameter(typeof(TRight), "right"); try { BinaryExpression binaryExpression = Expression.MakeBinary(operatorType, leftParameter, rightParameter); Expression > lambdaExpression = Expression.Lambda >(binaryExpression, leftParameter, rightParameter); function = lambdaExpression.Compile(); return true; } catch (Exception e) { if (Fx.IsFatal(e)) { throw; } validationError = new ValidationError(e.Message); return false; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SplineQuaternionKeyFrame.cs
- PassportPrincipal.cs
- NativeActivity.cs
- XmlHierarchicalEnumerable.cs
- LoginDesigner.cs
- CookieProtection.cs
- Utils.cs
- Grid.cs
- Filter.cs
- Binding.cs
- Timer.cs
- Hyperlink.cs
- CreateUserErrorEventArgs.cs
- AssociationEndMember.cs
- WebControlParameterProxy.cs
- TextureBrush.cs
- EntityDesignerBuildProvider.cs
- KeySpline.cs
- OdbcEnvironment.cs
- RequestUriProcessor.cs
- Multiply.cs
- SrgsItemList.cs
- ScalarOps.cs
- SendSecurityHeaderElement.cs
- DSASignatureFormatter.cs
- EmbeddedMailObject.cs
- ListChangedEventArgs.cs
- FormViewUpdateEventArgs.cs
- AnnotationResourceChangedEventArgs.cs
- RIPEMD160.cs
- ThumbButtonInfo.cs
- PeerNode.cs
- FilteredDataSetHelper.cs
- SelectionListComponentEditor.cs
- SiteMapDataSourceView.cs
- PageHandlerFactory.cs
- Highlights.cs
- AtomicFile.cs
- SpellerStatusTable.cs
- BitmapImage.cs
- MaterialCollection.cs
- ParseChildrenAsPropertiesAttribute.cs
- ComponentEditorPage.cs
- ScriptManager.cs
- ResourceReferenceExpression.cs
- HandlerBase.cs
- SignatureGenerator.cs
- ProtocolsConfigurationHandler.cs
- ControlParameter.cs
- LinqMaximalSubtreeNominator.cs
- Membership.cs
- handlecollector.cs
- SoapSchemaImporter.cs
- AdapterDictionary.cs
- AbstractExpressions.cs
- ItemChangedEventArgs.cs
- BuildProvider.cs
- Point3D.cs
- PackagingUtilities.cs
- Literal.cs
- Highlights.cs
- ObjectHandle.cs
- ExceptionUtil.cs
- LocatorManager.cs
- TextRangeBase.cs
- ResourceContainerWrapper.cs
- DropDownList.cs
- AttachmentService.cs
- Int32EqualityComparer.cs
- TemplateApplicationHelper.cs
- CodeMemberField.cs
- Tokenizer.cs
- IIS7WorkerRequest.cs
- TreeViewCancelEvent.cs
- Section.cs
- SortedList.cs
- AttributeCollection.cs
- ToolboxDataAttribute.cs
- HTTPNotFoundHandler.cs
- String.cs
- SizeConverter.cs
- NavigationEventArgs.cs
- SafeThemeHandle.cs
- RadialGradientBrush.cs
- EventTrigger.cs
- SqlDataSourceStatusEventArgs.cs
- SelectionUIService.cs
- PriorityItem.cs
- ServerValidateEventArgs.cs
- IPCCacheManager.cs
- Package.cs
- InkCanvas.cs
- StrokeNodeOperations2.cs
- ProtocolsSection.cs
- RootAction.cs
- InvalidComObjectException.cs
- DelayedRegex.cs
- XmlArrayAttribute.cs
- DeflateStream.cs
- ResourcePart.cs