difference between var and dynamic and object in c# with example