DeepCopy a simple Expression Tree to DeepCopy Use the method is Extension,use like: var a=1; var b=a.DeepCopy(); var a=new A(); a.DeepCopyCase(out B b);