Rop.TypeProxy 1.0.16

dotnet add package Rop.TypeProxy --version 1.0.16                
NuGet\Install-Package Rop.TypeProxy -Version 1.0.16                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Rop.TypeProxy" Version="1.0.16" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Rop.TypeProxy --version 1.0.16                
#r "nuget: Rop.TypeProxy, 1.0.16"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Rop.TypeProxy as a Cake Addin
#addin nuget:?package=Rop.TypeProxy&version=1.0.16

// Install Rop.TypeProxy as a Cake Tool
#tool nuget:?package=Rop.TypeProxy&version=1.0.16                

Rop.Types

Rop.Types gives extra information for Types and Properties

Features

TypeProxy

Rop.Types gives extra information for Types and Properties

TypeProxy.Get(type,isnullallowed)

A ITypeProxy interface with extra information about types

public interface ITypeProxy:IEquatable<ITypeProxy>
{
     Type Type { get; }
     RuntimeTypeHandle TypeHandle { get; }
     string Name { get; }
     string FriendlyName { get; }
     TypeCode TypeCode { get; }
     TypeType TypeType { get; }
     TypeFlags TypeFlags { get; }
     ITypeProxy? BaseType { get; }
     bool IsNullAllowed { get; }
     bool HasEmptyConstructor { get; }
     object? GetDefaultValue();
     bool IsBasicValueType {get;}
     bool IsEnum {get;}
     bool IsStruct{get;}
     bool IsNullable{get;}
     bool IsString{get;}
     bool IsArray{get;}
     bool IsList{get;}
     bool IsDictionary{get;}
     bool IsBasicEnumerable{get;}
     bool IsEnumerable{get;}
     bool IsBasicObject{get;}
     bool IsObject{get;}
     bool IsBasicSimpleGeneric{get;}
     bool IsSimpleGeneric{get;}
     bool IsBasicMultiGeneric{get;}
     bool IsMultiGeneric{get;}
     bool IsGeneric{get;}
     bool IsBasicGeneric{get;}
}

PropertyProxy

PropertyProxy allows fast property recovery w/o reflection

PropertyProxy.Get(Get(type,string propertyname)

PropertyProxy.Get(Get(tpropertyinfo)

public interface IPropertyProxy:IEquatable<IPropertyProxy>
{
    string Name { get; }
    PropertyInfo PropertyInfo { get; }
    ITypeProxy DeclaringClass { get; }
    bool IsNullAllowed { get; }
    ITypeProxy PropertyType { get; }
    IReadOnlyList<Attribute> Attributes { get; }
    bool CanRead { get; }
    bool CanWrite { get; }
    MethodInfo? Getter { get; }
    MethodInfo? Setter { get; }
    object? GetValue(object item);
    void SetValue(object item, object? value);
}

ClassProxy

ClassProxy allows get all public properties (as propertyproxies) without reflection

Get(type)

public interface IClassProxy
{
    RuntimeTypeHandle TypeHandle { get; }
    ITypeProxy Type { get; }
    IReadOnlyList<IPropertyProxy> GetPublicProperties();
}

SimpleMethodProxy

SimpleMethodProxy allows fast function calls w/o reflection

SimpleActionProxy

SimpleActionProxy allows fast action calls w/o reflection

EnumerableProxy

Allows cast an Enumerable to a List or Array without knowing its type


(C)2022 Ramón Ordiales Plaza

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Framework net472 is compatible.  net48 was computed.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • .NETFramework 4.7.2

    • No dependencies.
  • net6.0

    • No dependencies.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on Rop.TypeProxy:

Package Downloads
Rop.Mapper

Unobstrusive Object Mapper

Rop.Ldap

Aditional helpers for Ldap

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.16 711 1/9/2023
1.0.15 301 1/9/2023
1.0.14 305 1/9/2023
1.0.13 332 1/9/2023
1.0.12 463 1/8/2023
1.0.11 313 1/5/2023
1.0.10 336 1/2/2023
1.0.9 329 1/2/2023
1.0.8 320 12/22/2022
1.0.7 333 12/19/2022
1.0.6 471 12/19/2022
1.0.5 564 9/25/2022
1.0.4 434 9/24/2022
1.0.3 413 9/3/2022
1.0.2 409 9/3/2022
1.0.1 421 9/3/2022