If I remember correctly, Transform.Position is a vector3 in World Space. Thus, even if you rotate the Entity, moving it along an axis will always be the same.
You would need to rotate the vector first by the rotation of the object to get it in relative space.
Eg: Entity.Transform.Position += Entity.Transform.Rotation * new Vector3(0,0,1f);
(i'm not sure anymore if the quaternion needs to be first of second to rotate a vector. Those are not permutable, but it should work. This is from the top of my head. )