Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / CompMod / System / ComponentModel / LicenseProviderAttribute.cs / 1305376 / 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. /// ///
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- __ComObject.cs
- RequestTimeoutManager.cs
- XmlDictionary.cs
- FloaterBaseParaClient.cs
- ToolStripManager.cs
- IntSecurity.cs
- RelatedCurrencyManager.cs
- ApplyImportsAction.cs
- IconHelper.cs
- WebPartManagerDesigner.cs
- ContainerSelectorActiveEvent.cs
- Config.cs
- SqlDataSourceEnumerator.cs
- NotifyInputEventArgs.cs
- SystemInfo.cs
- counter.cs
- EntityDataSourceChangingEventArgs.cs
- ToolTipAutomationPeer.cs
- Attributes.cs
- DocumentStatusResources.cs
- TextContainerChangedEventArgs.cs
- Connection.cs
- AnnotationStore.cs
- CellQuery.cs
- JsonWriter.cs
- SmiEventSink.cs
- CheckBoxFlatAdapter.cs
- TouchesOverProperty.cs
- SafeRegistryHandle.cs
- FormViewCommandEventArgs.cs
- ConnectionStringSettingsCollection.cs
- BooleanStorage.cs
- MSAAEventDispatcher.cs
- StaticSiteMapProvider.cs
- DictionaryMarkupSerializer.cs
- TextServicesDisplayAttributePropertyRanges.cs
- ToolStripSplitButton.cs
- DataTablePropertyDescriptor.cs
- securestring.cs
- SerializationSectionGroup.cs
- DesignParameter.cs
- PopupRoot.cs
- ProcessModuleCollection.cs
- IEnumerable.cs
- WizardPanelChangingEventArgs.cs
- Gdiplus.cs
- PenLineJoinValidation.cs
- CellRelation.cs
- StreamInfo.cs
- MaskedTextBox.cs
- CompilationUtil.cs
- PropertyBuilder.cs
- TemplateColumn.cs
- SortQuery.cs
- PieceDirectory.cs
- WindowsListViewScroll.cs
- OrderPreservingPipeliningMergeHelper.cs
- EventLogEntryCollection.cs
- ProfileSettings.cs
- ImportedPolicyConversionContext.cs
- UnicodeEncoding.cs
- ElementAction.cs
- WindowsListViewGroupSubsetLink.cs
- ListItemDetailViewAttribute.cs
- TargetConverter.cs
- MsmqInputChannelListenerBase.cs
- SurrogateChar.cs
- JumpTask.cs
- IsolatedStorageFilePermission.cs
- Crypto.cs
- DataFormats.cs
- Trace.cs
- ApplicationGesture.cs
- TdsParserSafeHandles.cs
- COM2FontConverter.cs
- ExecutionEngineException.cs
- MsmqAppDomainProtocolHandler.cs
- XmlNodeList.cs
- DomainUpDown.cs
- Part.cs
- OperationContextScope.cs
- SqlDependencyUtils.cs
- WSIdentityFaultException.cs
- DesignerObject.cs
- HostingEnvironmentWrapper.cs
- DataGridPagerStyle.cs
- ComplexPropertyEntry.cs
- BindingNavigator.cs
- XmlSchemaImport.cs
- Section.cs
- TransactionContextValidator.cs
- Merger.cs
- EntitySqlQueryCacheEntry.cs
- ValidationRule.cs
- DataKey.cs
- SvcMapFileSerializer.cs
- MinMaxParagraphWidth.cs
- CryptoKeySecurity.cs
- VerticalConnector.xaml.cs
- Stack.cs