私はおそらく非常に単純なものを見逃しています。
私は DynamicProxy の使用の非常に最小限の例を書こうとしています - 私は基本的に呼び出しを傍受し、メソッド名とパラメータ値を表示したいと思っています。私は次のようなコードを持っています:
public class FirstKindInterceptor : IInterceptor
{
    public void Intercept(IInvocation invocation)
    {
        Console.WriteLine("First kind interceptor before {0} call with parameter {1} ", invocation.Method.Name, invocation.Arguments[0]);
        invocation.Proceed();
        Console.WriteLine("First kind interceptor after the call");
    }
}
public interface IFancyService
{
    string GetResponse(string request);
}
public class FancyService : IFancyService
{
    public string GetResponse(string request)
    {
        return "Did you just say '" + request + "'?";
    }
}
class Program
{
    static void Main(string[] args)
    {
        var service = new FancyService();
        var interceptor = new FirstKindInterceptor();
        var generator = new ProxyGenerator();
        var proxy = generator.CreateClassProxyWithTarget<IFancyService>(service, new IInterceptor[] { interceptor } );
        Console.WriteLine(proxy.GetResponse("what?"));
    }
}
ただし、実行すると、次の例外が発生します。
未処理の例外: System.ArgumentException: 'classToProxy' はクラスである必要がありますパラメーター名: classToProxy
私は何が欠けていますか?