C# 클래스 Com.Aote.ObjectTools.CustomType

自定义类型,包含一个基础类型,即对象自身的class类型,一些常用的内容都直接调用这个基础类型的方法 完成,只是在获取属性等方面才做自己的实现过程。
상속: System.Type
파일 보기 프로젝트 열기: DuBin1988/restv2 1 사용 예제들

공개 프로퍼티들

프로퍼티 타입 설명
_customProperties List

공개 메소드들

메소드 설명
AddProperty ( string name ) : void

增加一个属性,类型为string

AddProperty ( string name, Type propertyType ) : void

增加一个属性,类型为给的值

AddProperty ( string name, Type propertyType, List attributes ) : void

增加一个属性,除名称及类型外,还有声明,不太常用

CustomType ( Type delegatingType ) : System

用基础类型构造用户类型。

GetConstructors ( BindingFlags bindingAttr ) : System.Reflection.ConstructorInfo[]
GetCustomAttributes ( Type attributeType, bool inherit ) : object[]
GetCustomAttributes ( bool inherit ) : object[]
GetElementType ( ) : Type
GetEvent ( string name, BindingFlags bindingAttr ) : EventInfo
GetEvents ( BindingFlags bindingAttr ) : System.Reflection.EventInfo[]
GetField ( string name, BindingFlags bindingAttr ) : FieldInfo
GetFields ( BindingFlags bindingAttr ) : System.Reflection.FieldInfo[]
GetInterface ( string name, bool ignoreCase ) : Type
GetInterfaces ( ) : System.Type[]
GetMembers ( BindingFlags bindingAttr ) : System.Reflection.MemberInfo[]
GetMethods ( BindingFlags bindingAttr ) : System.Reflection.MethodInfo[]
GetNestedType ( string name, BindingFlags bindingAttr ) : Type
GetNestedTypes ( BindingFlags bindingAttr ) : System.Type[]
GetProperties ( BindingFlags bindingAttr ) : System.Reflection.PropertyInfo[]

获得所有属性信息,包括clr属性以及自定义属性。

InvokeMember ( string name, BindingFlags invokeAttr, Binder binder, object target, object args, ParameterModifier modifiers, System culture, string namedParameters ) : object
IsDefined ( Type attributeType, bool inherit ) : bool

보호된 메소드들

메소드 설명
GetAttributeFlagsImpl ( ) : TypeAttributes
GetConstructorImpl ( BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type types, ParameterModifier modifiers ) : ConstructorInfo
GetMethodImpl ( string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type types, ParameterModifier modifiers ) : MethodInfo
GetPropertyImpl ( string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type types, ParameterModifier modifiers ) : PropertyInfo

实际获取某个属性的属性信息的实现过程。

HasElementTypeImpl ( ) : bool
IsArrayImpl ( ) : bool
IsByRefImpl ( ) : bool
IsCOMObjectImpl ( ) : bool
IsPointerImpl ( ) : bool
IsPrimitiveImpl ( ) : bool

비공개 메소드들

메소드 설명
CheckIfNameExists ( string name ) : bool

检查属性是否存在,以避免重复添加属性。如果属性已经存在,将抛出属性名存在异常。

메소드 상세

AddProperty() 공개 메소드

增加一个属性,类型为string
public AddProperty ( string name ) : void
name string 属性名
리턴 void

AddProperty() 공개 메소드

增加一个属性,类型为给的值
public AddProperty ( string name, Type propertyType ) : void
name string 属性名
propertyType System.Type 属性类型
리턴 void

AddProperty() 공개 메소드

增加一个属性,除名称及类型外,还有声明,不太常用
public AddProperty ( string name, Type propertyType, List attributes ) : void
name string 属性名
propertyType System.Type 属性类型
attributes List 声明
리턴 void

CustomType() 공개 메소드

用基础类型构造用户类型。
public CustomType ( Type delegatingType ) : System
delegatingType System.Type 基础类型
리턴 System

GetAttributeFlagsImpl() 보호된 메소드

protected GetAttributeFlagsImpl ( ) : TypeAttributes
리턴 TypeAttributes

GetConstructorImpl() 보호된 메소드

protected GetConstructorImpl ( BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type types, ParameterModifier modifiers ) : ConstructorInfo
bindingAttr BindingFlags
binder System.Reflection.Binder
callConvention CallingConventions
types System.Type
modifiers System.Reflection.ParameterModifier
리턴 System.Reflection.ConstructorInfo

GetConstructors() 공개 메소드

public GetConstructors ( BindingFlags bindingAttr ) : System.Reflection.ConstructorInfo[]
bindingAttr BindingFlags
리턴 System.Reflection.ConstructorInfo[]

GetCustomAttributes() 공개 메소드

public GetCustomAttributes ( Type attributeType, bool inherit ) : object[]
attributeType System.Type
inherit bool
리턴 object[]

GetCustomAttributes() 공개 메소드

public GetCustomAttributes ( bool inherit ) : object[]
inherit bool
리턴 object[]

GetElementType() 공개 메소드

public GetElementType ( ) : Type
리턴 System.Type

GetEvent() 공개 메소드

public GetEvent ( string name, BindingFlags bindingAttr ) : EventInfo
name string
bindingAttr BindingFlags
리턴 System.Reflection.EventInfo

GetEvents() 공개 메소드

public GetEvents ( BindingFlags bindingAttr ) : System.Reflection.EventInfo[]
bindingAttr BindingFlags
리턴 System.Reflection.EventInfo[]

GetField() 공개 메소드

public GetField ( string name, BindingFlags bindingAttr ) : FieldInfo
name string
bindingAttr BindingFlags
리턴 System.Reflection.FieldInfo

GetFields() 공개 메소드

public GetFields ( BindingFlags bindingAttr ) : System.Reflection.FieldInfo[]
bindingAttr BindingFlags
리턴 System.Reflection.FieldInfo[]

GetInterface() 공개 메소드

public GetInterface ( string name, bool ignoreCase ) : Type
name string
ignoreCase bool
리턴 System.Type

GetInterfaces() 공개 메소드

public GetInterfaces ( ) : System.Type[]
리턴 System.Type[]

GetMembers() 공개 메소드

public GetMembers ( BindingFlags bindingAttr ) : System.Reflection.MemberInfo[]
bindingAttr BindingFlags
리턴 System.Reflection.MemberInfo[]

GetMethodImpl() 보호된 메소드

protected GetMethodImpl ( string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type types, ParameterModifier modifiers ) : MethodInfo
name string
bindingAttr BindingFlags
binder System.Reflection.Binder
callConvention CallingConventions
types System.Type
modifiers System.Reflection.ParameterModifier
리턴 System.Reflection.MethodInfo

GetMethods() 공개 메소드

public GetMethods ( BindingFlags bindingAttr ) : System.Reflection.MethodInfo[]
bindingAttr BindingFlags
리턴 System.Reflection.MethodInfo[]

GetNestedType() 공개 메소드

public GetNestedType ( string name, BindingFlags bindingAttr ) : Type
name string
bindingAttr BindingFlags
리턴 System.Type

GetNestedTypes() 공개 메소드

public GetNestedTypes ( BindingFlags bindingAttr ) : System.Type[]
bindingAttr BindingFlags
리턴 System.Type[]

GetProperties() 공개 메소드

获得所有属性信息,包括clr属性以及自定义属性。
public GetProperties ( BindingFlags bindingAttr ) : System.Reflection.PropertyInfo[]
bindingAttr BindingFlags 未知
리턴 System.Reflection.PropertyInfo[]

GetPropertyImpl() 보호된 메소드

实际获取某个属性的属性信息的实现过程。
protected GetPropertyImpl ( string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type types, ParameterModifier modifiers ) : PropertyInfo
name string 属性名
bindingAttr BindingFlags 未知
binder System.Reflection.Binder 未知
returnType System.Type 未知
types System.Type 未知
modifiers System.Reflection.ParameterModifier 未知
리턴 System.Reflection.PropertyInfo

HasElementTypeImpl() 보호된 메소드

protected HasElementTypeImpl ( ) : bool
리턴 bool

InvokeMember() 공개 메소드

public InvokeMember ( string name, BindingFlags invokeAttr, Binder binder, object target, object args, ParameterModifier modifiers, System culture, string namedParameters ) : object
name string
invokeAttr BindingFlags
binder System.Reflection.Binder
target object
args object
modifiers System.Reflection.ParameterModifier
culture System
namedParameters string
리턴 object

IsArrayImpl() 보호된 메소드

protected IsArrayImpl ( ) : bool
리턴 bool

IsByRefImpl() 보호된 메소드

protected IsByRefImpl ( ) : bool
리턴 bool

IsCOMObjectImpl() 보호된 메소드

protected IsCOMObjectImpl ( ) : bool
리턴 bool

IsDefined() 공개 메소드

public IsDefined ( Type attributeType, bool inherit ) : bool
attributeType System.Type
inherit bool
리턴 bool

IsPointerImpl() 보호된 메소드

protected IsPointerImpl ( ) : bool
리턴 bool

IsPrimitiveImpl() 보호된 메소드

protected IsPrimitiveImpl ( ) : bool
리턴 bool

프로퍼티 상세

_customProperties 공개적으로 프로퍼티

保存类型的属性信息,属性信息实现了PropertyInfo,可以当做正常的PropertyInfo使用。
public List _customProperties
리턴 List