This project has moved and is read-only. For the latest updates, please go here.

Fasterflect 2.0

Rating:        Based on 3 ratings
Reviewed:  3 reviews
Downloads: 2265
Change Set: 42605
Released: Mar 21, 2010
Updated: Jan 24, 2011 by buunguyen
Dev status: Stable Help Icon

Recommended Download

Application Bundle (including binary for 3.5/4.0, CHM doc and full source code)
application, 1493K, uploaded Mar 28, 2010 - 1311 downloads

Other Available Downloads

Application Binary for .NET 3.5
application, 64K, uploaded Mar 28, 2010 - 194 downloads
Application Binary for .NET 4.0
application, 65K, uploaded Mar 28, 2010 - 258 downloads
Application Full source code (including unit test and benchmark application)
application, 191K, uploaded Mar 28, 2010 - 307 downloads
Application CHM API documentation
application, 1203K, uploaded Mar 28, 2010 - 195 downloads

Release Notes

We are pleased to release version 2.0 of Fasterflect, which contains a lot of additions and improvements from the previous version. Please refer to the project wiki for complete documentation about the features of Fasterflect 2.0.

Key additions

  • Wrapper query API to .NET reflection to make the query of .NET metadata much easier, yet sophisticated
  • Integration between the invocation API (aka access API) and .NET reflection class such as MethodInfo, ConstructorInfo, MemberInfo etc. For example, you can perform query using Fasterflect to retrieve a MethodInfo (using the above query API), examine it and then invoke it, fully leveraging the faster CIL generation engine of Fasterflect.
  • Additional services such as advanced object construction, deep cloning and object mapping.
  • Both query API and invocation API (including delegate API) accept Flags which allows you to control many aspects of the lookup & invocation.

Key changes

  • Many existing extension methods have their names changed as we went through the process of assuring API consistency & usability, especially when we have added so many things into Fasterflect since 1.1. Since now we have 2 developers agree on these standards, instead of 1 as with 1.1 and prior, we hope you like the new standards better. (Of course, you would have to make some code change when switching from 1.1 to 2.0, but the changes should be very straight-forward in most cases except for the things mentioned in other changes below.)
  • Fasterflect extension methods now don't require a type parameter, which we have found to be inconvenient because people are forced to append <object> to the call even when they don't care about the return value or its type. Now, these methods simply return object and you can cast to the correct type if you want that.
  • Batch fields/properties set are gone. They are replaced by object mapping which are more flexible, sophisticated and faster (code gen behind the scene) . Batch setting of static members is not supposed because we think it's a rare scenario - do let us know if you have this need and we add support for that in the next minor release.
  • The class Reflector and its methods are now gone. We instead employ a custom-built weak reference-based cache to assure that generated CIL can be GC'ed when memory is low.

Reviews for this release

BRILLIANT. Great job on the library and the documentation.
by ronnieoverby on Feb 17, 2012 at 3:27 AM
Amazing work. Clean API, crisp code. Great documentation. Very useful. Well done!
by OmerRaviv on Jun 5, 2010 at 6:56 PM
Perfect library, excellent docs, very useful and helpful. Thank you.
by NSentinel on Apr 24, 2010 at 12:06 AM