北宋越州山阴(今浙江绍兴)人,字世昌。大中祥符进士。历仕州郡,数平冤狱,累迁枢密直学士。仁宗时,为御史中丞,兼判吏部流内铨,铨事皆由己定,防止衙吏擅权为奸。宝元二年(1039)知永兴军时,计道里远近,放宽辇运期日。次年,同知枢密院事。庆历三年(1043)除枢密使。次年拜相,因支持庆历新政,仅百二十日即出知兖州。七年致仕。