Module.IsDefined(Type, Boolean) Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Returnerar ett värde som anger om den angivna attributtypen har tillämpats på den här modulen.
public:
virtual bool IsDefined(Type ^ attributeType, bool inherit);
public virtual bool IsDefined(Type attributeType, bool inherit);
abstract member IsDefined : Type * bool -> bool
override this.IsDefined : Type * bool -> bool
Public Overridable Function IsDefined (attributeType As Type, inherit As Boolean) As Boolean
Parametrar
- attributeType
- Type
Typ av anpassat attribut att testa för.
- inherit
- Boolean
Det här argumentet ignoreras för objekt av den här typen.
Returer
trueom en eller flera instanser av attributeType har tillämpats på den här modulen, annars . false
Implementeringar
Undantag
attributeType är null.
attributeType är inte ett Type objekt som tillhandahålls av körningen. Till exempel attributeType är ett TypeBuilder objekt.
Exempel
I följande exempel visas hur metoden används IsDefined .
using System;
using System.Reflection;
//Define a module-level attribute.
[module: ReflectionModule_Examples.MySimpleAttribute("module-level")]
namespace ReflectionModule_Examples
{
class MyMainClass
{
static void Main()
{
Module[] moduleArray;
moduleArray = typeof(MyMainClass).Assembly.GetModules(false);
//In a simple project with only one module, the module at index
// 0 will be the module containing these classes.
Module myModule = moduleArray[0];
Type myType;
myType = myModule.GetType("ReflectionModule_Examples.MySimpleAttribute");
Console.WriteLine("IsDefined(MySimpleAttribute) = {0}", myModule.IsDefined(myType, false));
}
}
//A very simple custom attribute.
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Module)]
public class MySimpleAttribute : Attribute
{
private string name;
public MySimpleAttribute(string newName)
{
name = newName;
}
}
}
Imports System.Reflection
'Define a module-level attribute.
<Module: ReflectionModule_Examples.MySimpleAttribute("module-level")>
'Define a module-level attribute.
Namespace ReflectionModule_Examples
Class MyMainClass
Shared Sub Main()
Dim moduleArray() As [Module]
moduleArray = GetType(MyMainClass).Assembly.GetModules(False)
'In a simple project with only one module, the module at index
' 0 will be the module containing these classes.
Dim myModule As [Module] = moduleArray(0)
Dim myType As Type
myType = myModule.GetType("ReflectionModule_Examples.MySimpleAttribute")
Console.WriteLine("IsDefined(MySimpleAttribute) = {0}", myModule.IsDefined(myType, False))
End Sub
End Class
'A very simple custom attribute.
<AttributeUsage(AttributeTargets.Class Or AttributeTargets.Module)> _
Public Class MySimpleAttribute
Inherits Attribute
Private name As String
Public Sub New(ByVal newName As String)
name = newName
End Sub
End Class
End Namespace 'ReflectionModule_Examples