该题考察的是现在完成时,前面hasn’t come表示完成时,前后一致,后面也需要用现在完成时,排除A,D
have been to 表示去过某地,经常和表示次数的次连用 have gone to 表示去了某地,还没有回来 所以选B