Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / CompMod / System / ComponentModel / LicenseProviderAttribute.cs / 1 / LicenseProviderAttribute.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.ComponentModel { using System; using System.Security.Permissions; ////// [AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false)] public sealed class LicenseProviderAttribute : Attribute { ///Specifies the ////// to use with a class. /// public static readonly LicenseProviderAttribute Default = new LicenseProviderAttribute(); private Type licenseProviderType = null; private string licenseProviderName = null; ////// Specifies the default value, which is no provider. This ///field is read-only. /// /// public LicenseProviderAttribute() : this((string)null) { } ///Initializes a new instance of the ///class without a license /// provider. /// public LicenseProviderAttribute(string typeName) { licenseProviderName = typeName; } ////// Initializes a new instance of the ///class with /// the specified type. /// /// public LicenseProviderAttribute(Type type) { licenseProviderType = type; } ////// Initializes a new instance of the ///class with /// the specified type of license provider. /// /// public Type LicenseProvider { // SECREVIEW: Remove this attribute once bug#411910 is fixed. [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Security", "CA2113:SecureLateBindingMethods")] get { if (licenseProviderType == null && licenseProviderName != null) { licenseProviderType = Type.GetType(licenseProviderName); } return licenseProviderType; } } ///Gets the license provider to use with the associated class. ////// /// public override object TypeId { get { string typeName = licenseProviderName; if (typeName == null && licenseProviderType != null) { typeName = licenseProviderType.FullName; } return GetType().FullName + typeName; } } ////// This defines a unique ID for this attribute type. It is used /// by filtering algorithms to identify two attributes that are /// the same type. For most attributes, this just returns the /// Type instance for the attribute. LicenseProviderAttribute overrides this to include the type name and the /// provider type name. /// ////// /// public override bool Equals(object value) { if (value is LicenseProviderAttribute && value != null) { Type type = ((LicenseProviderAttribute)value).LicenseProvider; if (type == LicenseProvider) { return true; } else { if (type != null && type.Equals(LicenseProvider)) { return true; } } } return false; } ////// public override int GetHashCode() { return base.GetHashCode(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ ///// Returns the hashcode for this object. /// ///// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.ComponentModel { using System; using System.Security.Permissions; ////// [AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false)] public sealed class LicenseProviderAttribute : Attribute { ///Specifies the ////// to use with a class. /// public static readonly LicenseProviderAttribute Default = new LicenseProviderAttribute(); private Type licenseProviderType = null; private string licenseProviderName = null; ////// Specifies the default value, which is no provider. This ///field is read-only. /// /// public LicenseProviderAttribute() : this((string)null) { } ///Initializes a new instance of the ///class without a license /// provider. /// public LicenseProviderAttribute(string typeName) { licenseProviderName = typeName; } ////// Initializes a new instance of the ///class with /// the specified type. /// /// public LicenseProviderAttribute(Type type) { licenseProviderType = type; } ////// Initializes a new instance of the ///class with /// the specified type of license provider. /// /// public Type LicenseProvider { // SECREVIEW: Remove this attribute once bug#411910 is fixed. [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Security", "CA2113:SecureLateBindingMethods")] get { if (licenseProviderType == null && licenseProviderName != null) { licenseProviderType = Type.GetType(licenseProviderName); } return licenseProviderType; } } ///Gets the license provider to use with the associated class. ////// /// public override object TypeId { get { string typeName = licenseProviderName; if (typeName == null && licenseProviderType != null) { typeName = licenseProviderType.FullName; } return GetType().FullName + typeName; } } ////// This defines a unique ID for this attribute type. It is used /// by filtering algorithms to identify two attributes that are /// the same type. For most attributes, this just returns the /// Type instance for the attribute. LicenseProviderAttribute overrides this to include the type name and the /// provider type name. /// ////// /// public override bool Equals(object value) { if (value is LicenseProviderAttribute && value != null) { Type type = ((LicenseProviderAttribute)value).LicenseProvider; if (type == LicenseProvider) { return true; } else { if (type != null && type.Equals(LicenseProvider)) { return true; } } } return false; } ////// public override int GetHashCode() { return base.GetHashCode(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007./// Returns the hashcode for this object. /// ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DataReaderContainer.cs
- SqlFactory.cs
- WebPartActionVerb.cs
- TrackingMemoryStreamFactory.cs
- FilterableAttribute.cs
- CalendarAutoFormatDialog.cs
- DataTemplateSelector.cs
- DbUpdateCommandTree.cs
- SerializationHelper.cs
- UnmanagedMemoryStream.cs
- DataTable.cs
- DelayedRegex.cs
- DoWhileDesigner.xaml.cs
- ListBoxItem.cs
- DatasetMethodGenerator.cs
- SplayTreeNode.cs
- TextParagraphCache.cs
- DataIdProcessor.cs
- DataExpression.cs
- ObservableDictionary.cs
- validationstate.cs
- ButtonChrome.cs
- UrlAuthFailedErrorFormatter.cs
- FrameworkRichTextComposition.cs
- NGCSerializerAsync.cs
- WrapPanel.cs
- Enum.cs
- HttpStreamMessageEncoderFactory.cs
- UIPropertyMetadata.cs
- OracleRowUpdatingEventArgs.cs
- XmlMapping.cs
- TdsParserSafeHandles.cs
- ipaddressinformationcollection.cs
- FilterQuery.cs
- SystemGatewayIPAddressInformation.cs
- ActionFrame.cs
- ReflectionUtil.cs
- ThemeDirectoryCompiler.cs
- WpfGeneratedKnownProperties.cs
- XPathDocumentNavigator.cs
- MemoryFailPoint.cs
- MetabaseServerConfig.cs
- WindowsGrip.cs
- OleCmdHelper.cs
- AsyncResult.cs
- ToolStripGrip.cs
- RequestCachePolicy.cs
- HyperLinkColumn.cs
- CreateUserWizardStep.cs
- AnnotationResourceChangedEventArgs.cs
- DecoderBestFitFallback.cs
- PathStreamGeometryContext.cs
- CoreSwitches.cs
- XmlLoader.cs
- BitmapImage.cs
- SqlConnectionPoolGroupProviderInfo.cs
- ProcessModule.cs
- QueryRewriter.cs
- MessageFilterException.cs
- OracleBoolean.cs
- XmlAttributeCollection.cs
- ToolbarAUtomationPeer.cs
- RegistrySecurity.cs
- RecordConverter.cs
- SubclassTypeValidator.cs
- SoapExtensionImporter.cs
- DataGridState.cs
- OrderedParallelQuery.cs
- WindowProviderWrapper.cs
- ComboBox.cs
- WebConfigurationFileMap.cs
- ISCIIEncoding.cs
- CompilationSection.cs
- StyleBamlRecordReader.cs
- CheckBoxRenderer.cs
- SoapEnvelopeProcessingElement.cs
- PersonalizableTypeEntry.cs
- WebPartManager.cs
- SrgsNameValueTag.cs
- Button.cs
- DataTableNewRowEvent.cs
- ItemCheckEvent.cs
- RemoteCryptoSignHashRequest.cs
- LoginCancelEventArgs.cs
- ConfigurationHelpers.cs
- QilBinary.cs
- Variant.cs
- _NegoState.cs
- DropDownButton.cs
- CodeDirectionExpression.cs
- PropertyEntry.cs
- safelink.cs
- ButtonPopupAdapter.cs
- ParameterCollectionEditor.cs
- WorkerRequest.cs
- SrgsToken.cs
- LineServicesCallbacks.cs
- Typeface.cs
- SqlIdentifier.cs
- LeaseManager.cs