I had done some chore development like moving common logic into method and move reflection related codes into ReflectHelper.