Dynamic Proxy Tutorial

Most of the contents are from https://kozmic.net/dynamic-proxy-tutorial/. I added some small supplement classes which are not in the series. All the credits go to Krzysztof Koźmic

  1. Introduction

  2. The what, why and how

  3. Selecting which methods to intercept

  4. Breaking hard dependencies

  5. InterceptorSelector, fine grained control over proxying

  6. Castle Dynamic Proxy tutorial part VI: handling non-virtual methods

    NonVirtualMemberNotification is renamed to NonProxyableMemberNotification

  7. Kinds of proxy objects

    Create proxy with parameters and interfaces.

    CreateClassProxy(Type classToProxy,
    	  Type[] additionalInterfacesToProxy, 
    	  ProxyGenerationOptions options,
    	  object[] constructorArguments, 
    	  params IInterceptor[] interceptors)
  8. Interface proxy without target

  9. Interface proxy with target

  10. Interface proxies with target interface

  11. When one interface is not enough

  12. Caching

  13. Mix in this, mix in that

  14. Persisting proxies

  15. Patterns and Antipatterns