Show / Hide Table of Contents

Class DynamicTypeInfo

Dynamic type information.

Inheritance
System.Object
System.Dynamic.DynamicObject
ExpandoBase
Expando
DynamicElementInfo
DynamicTypeInfo
Implements
ITypeInfo
IElementInfo
IExpando
System.Dynamic.IDynamicMetaObjectProvider
IIndexable
IAttributeProvider
Inherited Members
DynamicElementInfo.Name
DynamicElementInfo.Annotations
DynamicElementInfo.DeclaringContainer
DynamicElementInfo.ToString()
DynamicElementInfo.GetAttributes<TAttribute>()
DynamicElementInfo.AddAnnotation(Object)
ExpandoBase.Item[String]
ExpandoBase.GetDynamicMemberNames()
ExpandoBase.HasDynamicMember(String)
ExpandoBase.TryGetMember(GetMemberBinder, Object)
ExpandoBase.TrySetMember(SetMemberBinder, Object)
ExpandoBase.TryInvokeMember(InvokeMemberBinder, Object[], Object)
ExpandoBase.ToDictionary(Func<String, String>, Func<Object, Object>)
ExpandoBase.GetInnerObjectTypeInfo()
ExpandoBase.GetThisTypeInfo()
ExpandoBase.TryGetValue(String, Object)
ExpandoBase.TrySetValue(String, Object)
System.Dynamic.DynamicObject.GetMetaObject(System.Linq.Expressions.Expression)
System.Dynamic.DynamicObject.TryBinaryOperation(System.Dynamic.BinaryOperationBinder, System.Object, System.Object)
System.Dynamic.DynamicObject.TryConvert(System.Dynamic.ConvertBinder, System.Object)
System.Dynamic.DynamicObject.TryCreateInstance(System.Dynamic.CreateInstanceBinder, System.Object[], System.Object)
System.Dynamic.DynamicObject.TryDeleteIndex(System.Dynamic.DeleteIndexBinder, System.Object[])
System.Dynamic.DynamicObject.TryDeleteMember(System.Dynamic.DeleteMemberBinder)
System.Dynamic.DynamicObject.TryGetIndex(System.Dynamic.GetIndexBinder, System.Object[], System.Object)
System.Dynamic.DynamicObject.TryInvoke(System.Dynamic.InvokeBinder, System.Object[], System.Object)
System.Dynamic.DynamicObject.TrySetIndex(System.Dynamic.SetIndexBinder, System.Object[], System.Object)
System.Dynamic.DynamicObject.TryUnaryOperation(System.Dynamic.UnaryOperationBinder, System.Object)
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
Namespace: Kephas.Reflection.Dynamic
Assembly: Kephas.Core.dll
Syntax
public class DynamicTypeInfo : DynamicElementInfo, ITypeInfo, IElementInfo, IExpando, IDynamicMetaObjectProvider, IIndexable, IAttributeProvider

Properties

| Improve this Doc View Source

BaseTypes

Gets the bases of this ITypeInfo. They include the real base and also the implemented interfaces.

Declaration
public IEnumerable<ITypeInfo> BaseTypes { get; }
Property Value
Type Description
System.Collections.Generic.IEnumerable<ITypeInfo>

The bases.

| Improve this Doc View Source

FullName

Gets the full name of the element.

Declaration
public override string FullName { get; }
Property Value
Type Description
System.String

The full name of the element.

Overrides
DynamicElementInfo.FullName
| Improve this Doc View Source

GenericTypeArguments

Gets a read-only list of ITypeInfo objects that represent the type arguments of a closed generic type.

Declaration
public IReadOnlyList<ITypeInfo> GenericTypeArguments { get; }
Property Value
Type Description
System.Collections.Generic.IReadOnlyList<ITypeInfo>

The generic arguments.

| Improve this Doc View Source

GenericTypeDefinition

Gets or sets a ITypeInfo object that represents a generic type definition from which the current generic type can be constructed.

Declaration
public ITypeInfo GenericTypeDefinition { get; protected set; }
Property Value
Type Description
ITypeInfo

The generic type definition.

| Improve this Doc View Source

GenericTypeParameters

Gets a read-only list of ITypeInfo objects that represent the type parameters of a generic type definition (open generic).

Declaration
public IReadOnlyList<ITypeInfo> GenericTypeParameters { get; }
Property Value
Type Description
System.Collections.Generic.IReadOnlyList<ITypeInfo>

The generic arguments.

| Improve this Doc View Source

Members

Gets the members.

Declaration
public IEnumerable<IElementInfo> Members { get; }
Property Value
Type Description
System.Collections.Generic.IEnumerable<IElementInfo>

The members.

| Improve this Doc View Source

Namespace

Gets or sets the namespace of the type.

Declaration
public string Namespace { get; protected set; }
Property Value
Type Description
System.String

The namespace of the type.

| Improve this Doc View Source

Properties

Gets the properties.

Declaration
public IEnumerable<IPropertyInfo> Properties { get; }
Property Value
Type Description
System.Collections.Generic.IEnumerable<IPropertyInfo>

The properties.

| Improve this Doc View Source

QualifiedFullName

Gets or sets the full name qualified with the module where it was defined.

Declaration
public virtual string QualifiedFullName { get; protected set; }
Property Value
Type Description
System.String

The full name qualified with the module.

Methods

| Improve this Doc View Source

AddBaseType(ITypeInfo)

Adds a base type to the dynamic type.

Declaration
protected virtual void AddBaseType(ITypeInfo baseType)
Parameters
Type Name Description
ITypeInfo baseType

The base type.

| Improve this Doc View Source

AddGenericTypeArgument(ITypeInfo)

Adds a generic type argument to the dynamic type.

Declaration
protected virtual void AddGenericTypeArgument(ITypeInfo genericTypeArgument)
Parameters
Type Name Description
ITypeInfo genericTypeArgument

The generic type argument.

| Improve this Doc View Source

AddGenericTypeParameter(ITypeInfo)

Adds a generic type parameter to the dynamic type.

Declaration
protected virtual void AddGenericTypeParameter(ITypeInfo genericTypeParameter)
Parameters
Type Name Description
ITypeInfo genericTypeParameter

The generic type parameter.

| Improve this Doc View Source

AddMember(IElementInfo)

Adds a member to the dynamic type.

Declaration
protected virtual void AddMember(IElementInfo member)
Parameters
Type Name Description
IElementInfo member

The member.

Exceptions
Type Condition
System.InvalidOperationException

Thrown when the requested operation is invalid.

| Improve this Doc View Source

CreateInstance(IEnumerable<Object>)

Creates an instance with the provided arguments (if any).

Declaration
public virtual object CreateInstance(IEnumerable<object> args = null)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<System.Object> args

The arguments.

Returns
Type Description
System.Object

The new instance.

| Improve this Doc View Source

GetMember(String, Boolean)

Gets a member by the provided name.

Declaration
public virtual IElementInfo GetMember(string name, bool throwIfNotFound = true)
Parameters
Type Name Description
System.String name

The member name.

System.Boolean throwIfNotFound

True to throw if the requested member is not found.

Returns
Type Description
IElementInfo

The requested member, or null.

| Improve this Doc View Source

MakeGenericType(IEnumerable<ITypeInfo>, IContext)

Constructs a generic type baed on the provided type arguments.

Declaration
public ITypeInfo MakeGenericType(IEnumerable<ITypeInfo> typeArguments, IContext constructionContext = null)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<ITypeInfo> typeArguments

The type arguments.

IContext constructionContext

The construction context (optional).

Returns
Type Description
ITypeInfo

A constructed ITypeInfo.

Implements

ITypeInfo
IElementInfo
IExpando
System.Dynamic.IDynamicMetaObjectProvider
IIndexable
IAttributeProvider

Extension Methods

DynamicObjectExtensions.SetPropertyValue(Object, String, Object)
DynamicObjectExtensions.TrySetPropertyValue(Object, String, Object)
DynamicObjectExtensions.GetPropertyValue(Object, String)
DynamicObjectExtensions.TryGetPropertyValue(Object, String, out Object)
DynamicObjectExtensions.GetRuntimeTypeInfo(Object)
DynamicObjectExtensions.ToDynamic(Object)
DynamicObjectExtensions.ToExpando(Object)
BehaviorValue.ToBehaviorValue<TValue>(TValue)
CollectionExtensions.AddRange<T, TItem>(T, IEnumerable<TItem>)
ExpandoExtensions.Merge<T>(T, Object)
ExpandoExtensions.GetLaxValue<T>(IIndexable, String, T)
LoggingExtensions.GetLogger(Object, IContext)
TypeExtensions.GetAbstractTypeInfo(ITypeInfo)
TypeExtensions.GetAbstractType(ITypeInfo)
TypeExtensions.GetAbstractType(Object)
TypeExtensions.GetAbstractTypeInfo(Object)
LocalizationHelper.GetLocalization(ITypeInfo)
ReflectionHelper.GetTypeInfo(Object)
TypeInfoExtensions.AsType(ITypeInfo)
TypeInfoExtensions.IsGenericType(ITypeInfo)
TypeInfoExtensions.IsGenericTypeDefinition(ITypeInfo)
TypeInfoExtensions.IsConstructedGenericType(ITypeInfo)
TypeInfoExtensions.GetDeclaredMembers(ITypeInfo)
AttributeProviderExtensions.GetAttribute<TAttribute>(IAttributeProvider)
RuntimeTypeInfoExtensions.IsExcludedFromModel(IAttributeProvider)
EntityEntryExtensions.TryGetAttachedEntityEntry(Object)
  • Improve this Doc
  • View Source
Back to top Generated by DocFX