LiteProxy 1.0.0

Tiny object proxying tools for C#

There is a newer version of this package available.
See the version list below for details.
Install-Package LiteProxy -Version 1.0.0
dotnet add package LiteProxy --version 1.0.0
<PackageReference Include="LiteProxy" Version="1.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add LiteProxy --version 1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

LiteProxy

Tiny object proxying tools for C#

Features:

DynamicProxy.GetInstanceFor&lt;...&gt;(); -- Pass the type of an interface or abstract, and you will get an object instance that implements that type and backs the properties and fields.

Extract&lt;Interface&gt;.From(Instance) -- Wraps an object instance in a proxy. Use this to coerce objects into interfaces they could implement.

LazyDelegate.For(...) -- Wraps a constructor function in a proxy that overrides all virtual properties. Any access to the properties will cause the function to be invoked and calls passed to the result.

LazyDelegate.ForKeyed(&quot;Id&quot;, MyValue, ConstructorFunc) -- Same as LazyDelegate.For, but this causes one named property with an initial value to skip the lazy invocation.

TODO

  1. Add the delegating behaviour of Extract&lt;&gt;.From() to DynamicProxy.
  2. Expose the delegating object (as dynamic?) through dynamic proxy generation
    • methods are always mapped to delegate object
    • fields are mapped to delegate if they exist, otherwise getters, setters and backing field are added as currently

LiteProxy

Tiny object proxying tools for C#

Features:

DynamicProxy.GetInstanceFor&lt;...&gt;(); -- Pass the type of an interface or abstract, and you will get an object instance that implements that type and backs the properties and fields.

Extract&lt;Interface&gt;.From(Instance) -- Wraps an object instance in a proxy. Use this to coerce objects into interfaces they could implement.

LazyDelegate.For(...) -- Wraps a constructor function in a proxy that overrides all virtual properties. Any access to the properties will cause the function to be invoked and calls passed to the result.

LazyDelegate.ForKeyed(&quot;Id&quot;, MyValue, ConstructorFunc) -- Same as LazyDelegate.For, but this causes one named property with an initial value to skip the lazy invocation.

TODO

  1. Add the delegating behaviour of Extract&lt;&gt;.From() to DynamicProxy.
  2. Expose the delegating object (as dynamic?) through dynamic proxy generation
    • methods are always mapped to delegate object
    • fields are mapped to delegate if they exist, otherwise getters, setters and backing field are added as currently

Dependencies

This package has no dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
1.0.1 3,521 5/14/2018
1.0.0 367 5/14/2018