英语,这题该怎么解释呢··作业·

问题描述:

英语,这题该怎么解释呢··作业·
While walking by the river yesterday evening ,he ___the boy struggling in the water up to safety.
A,pulled B.had pulled C.has pulled D.was pulling

答案是 A.pulled
这句话的意思是:昨晚他沿着河边散步时,把在水中挣扎着的男孩救上岸.
首先,yesterday evening,表示一个过去的时间,故主句应用相应的过去时.
A 是一般过去时;B 是过去完成时;C是现在完成时;D是过去进行时.
如果选B,则表示,救人这个动作发生在散步前,与表示 当……时 的“while”相矛盾;
C是现在完成时,这个时态表示,过去发生的动作,对现在造成影响,或过去的动作一直持续到现在甚至到将来.这句话没有这个意思,而且,现在完成时不能单独与准确的时间连用,所以不选C;
在出现“while”时,一般可以考虑选用进行时,但我个人认为,“while”常表示两个动作同时进行,如果这题选D,则表示,他散步的同时又在救人,逻辑上说不通;
我认为,这句话在陈述过去的一个事实,说的是一个过去的动作,选A就可以了.
这个解释有点牵强,如果错了,还望指出正确答案!