Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx35 / System.WorkflowServices / System / Workflow / Activities / ContractMethodParameterInfo.cs / 1305376 / ContractMethodParameterInfo.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.Workflow.Activities { using System; using System.Reflection; using System.ServiceModel; using System.Workflow.ComponentModel.Compiler; internal sealed class ContractMethodParameterInfo : ParameterInfo { internal ContractMethodParameterInfo(ContractMethodInfo member, OperationParameterInfo parameterInfo) { if (member == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("member"); } if (parameterInfo == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("parameterInfo"); } this.AttrsImpl = parameterInfo.Attributes; this.MemberImpl = member; this.PositionImpl = parameterInfo.Position; if (parameterInfo.Position >= 0) { this.NameImpl = parameterInfo.Name; string typeName = parameterInfo.ParameterType.FullName; if ((this.AttrsImpl & ParameterAttributes.Out) > 0) { typeName += '&'; // Append with & for (ref & out) parameter types if (this.Member.DeclaringType is DesignTimeType) { this.ClassImpl = (this.Member.DeclaringType as DesignTimeType).ResolveType(typeName); } else if (parameterInfo.ParameterType is DesignTimeType) { this.ClassImpl = (parameterInfo.ParameterType as DesignTimeType).ResolveType(typeName); } else { typeName += ", " + parameterInfo.ParameterType.Assembly.FullName; this.ClassImpl = Type.GetType(typeName); } } else { this.ClassImpl = parameterInfo.ParameterType; } } else { this.ClassImpl = parameterInfo.ParameterType; } } public override object[] GetCustomAttributes(bool inherit) { return GetCustomAttributes(typeof(object), inherit); } public override object[] GetCustomAttributes(Type attributeType, bool inherit) { if (attributeType == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("attributeType"); } if (this.ParameterType == null) { return new object[0]; } return this.ParameterType.GetCustomAttributes(attributeType, inherit); } public override bool IsDefined(Type attributeType, bool inherit) { if (attributeType == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("attributeType"); } if (this.ParameterType == null) { return false; } return this.ParameterType.IsDefined(attributeType, inherit); } } } // 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
- Literal.cs
- TransformCryptoHandle.cs
- EnumerableValidator.cs
- StorageBasedPackageProperties.cs
- Visitor.cs
- PingReply.cs
- PaperSource.cs
- sqlinternaltransaction.cs
- TypeListConverter.cs
- Listen.cs
- OracleParameterCollection.cs
- DataRecordInternal.cs
- ChildrenQuery.cs
- DynamicRenderer.cs
- HwndTarget.cs
- Base64Encoding.cs
- TCPClient.cs
- TextEditorTyping.cs
- SqlProfileProvider.cs
- CodeAssignStatement.cs
- SystemParameters.cs
- CngKeyBlobFormat.cs
- CustomAttributeFormatException.cs
- StateMachine.cs
- TextDecorationUnitValidation.cs
- Int32Converter.cs
- VirtualDirectoryMapping.cs
- Storyboard.cs
- RedirectionProxy.cs
- Aggregates.cs
- OdbcCommand.cs
- RegexEditorDialog.cs
- ControlCachePolicy.cs
- ProvideValueServiceProvider.cs
- Clock.cs
- KeyInstance.cs
- DataFormat.cs
- OleDbConnectionFactory.cs
- StaticExtensionConverter.cs
- DataList.cs
- KeyValueSerializer.cs
- CodeGroup.cs
- ColorConverter.cs
- XmlWriterSettings.cs
- FeatureAttribute.cs
- FieldToken.cs
- XmlSchemaSimpleType.cs
- ContextMarshalException.cs
- NestPullup.cs
- ElementUtil.cs
- Imaging.cs
- IriParsingElement.cs
- PerformanceCounterManager.cs
- ImageFormatConverter.cs
- ConvertEvent.cs
- Axis.cs
- CompressedStack.cs
- SqlTypeSystemProvider.cs
- ComponentTray.cs
- TypeLibraryHelper.cs
- DataPagerFieldCollection.cs
- GridLengthConverter.cs
- OLEDB_Util.cs
- SelectionPattern.cs
- DesignerHost.cs
- ProgressBarRenderer.cs
- TreeNodeSelectionProcessor.cs
- PeerNameRecord.cs
- TabPanel.cs
- ADMembershipUser.cs
- TextInfo.cs
- MonthChangedEventArgs.cs
- ToolZone.cs
- KeyConstraint.cs
- XmlNodeChangedEventArgs.cs
- VBCodeProvider.cs
- JobDuplex.cs
- UnsafeNativeMethods.cs
- Image.cs
- ResXResourceSet.cs
- EdmItemCollection.cs
- DataGridViewCellStateChangedEventArgs.cs
- SystemResourceKey.cs
- clipboard.cs
- WsatAdminException.cs
- BamlLocalizer.cs
- TagPrefixAttribute.cs
- IndicCharClassifier.cs
- oledbconnectionstring.cs
- TextTreeNode.cs
- BinaryParser.cs
- AnnotationHighlightLayer.cs
- PenThreadWorker.cs
- RenderTargetBitmap.cs
- XmlSchemaException.cs
- ObjectDataSourceMethodEventArgs.cs
- ErrorWebPart.cs
- BinaryCommonClasses.cs
- XamlWriter.cs
- TemplateGroupCollection.cs