宋天(tian)禧(xi)三(san)年(1019年)中進(jin)士,曾擔任(ren)宜州(zhou)(廣西(xi))、夏(xia)州(zhou)(湖北)、安州(zhou)(河北)、無錫(xi)(江(jiang)蘇)縣宰、推官(guan)(guan),后改(gai)任(ren)大(da)理寺丞。任(ren)期內,其母謝世,為守孝而寓(yu)居揚(yang)州(zhou)。景祐(you)元年(1034年)舉賢良方正,遷禮部員(yuan)外郎,后出任(ren)洪州(zhou)(今江(jiang)西(xi)南昌(chang))通(tong)判,不久又調(diao)往揚(yang)州(zhou)。因曾上疏皇帝諫(jian)議十條,由(you)此被選入直史館,為開(kai)封(feng)府推官(guan)(guan)、三(san)司鹽鐵判官(guan)(guan)。
寶元元年(nian)(1038年(nian)),安(an)(an)化(在(zai)今甘肅省安(an)(an)化縣)一帶的(de)少數民(min)族(zu)首領蒙光月率領部(bu)眾攻打宜州(今廣西宜山(shan)縣一帶),他(ta)遂向朝(chao)廷提出“制蠻”方案,朝(chao)廷采用(yong)其策略,平定了蒙光月之亂。以(yi)后他(ta)繼續向皇帝上言,陳(chen)述治國主張,提出爵賞宜慎重,擇官須謹慎,明(ming)定薦(jian)舉原則,規定各級人員著裝服飾以(yi)端正禮儀(yi),用(yong)才須得當,注(zhu)重將(jiang)帥(shuai)的(de)選拔,明(ming)辨忠(zhong)良奸佞(ning),整頓邊防,加強戰備等(deng),宋(song)仁宗贊(zan)同并采納其建(jian)議(yi)。不久被(bei)任命為史館修撰,后又被(bei)提拔為知制誥、翰林學(xue)士,不久再(zai)遷為尚(shang)書省禮部(bu)郎中(zhong)。
由于(yu)他博(bo)學(xue)多智(zhi),能(neng)言善辯,尤其喜論國家大事,言辯頗為犀利(li),也常不(bu)經(jing)意地傷了(le)他人(ren)(ren)。宋仁宗對此頗為不(bu)悅,將其調(diao)出尚書省(sheng)(sheng),改派為侍讀學(xue)士、集(ji)賢殿修撰(zhuan)、河(he)陽(今河(he)南孟縣(xian))知(zhi)府(fu),不(bu)久又(you)調(diao)為河(he)中(今山西永濟)知(zhi)府(fu)。尚未到任(ren),便因病離開人(ren)(ren)世,卒葬于(yu)江蘇省(sheng)(sheng)丹陽市城(cheng)東硯山西北區。