徐元文在朝为官三十年,宽厚谦和,与同僚相处,十分平和。遇事刚正不阿,无所顾忌,无论是任左都御史,还是贬领史局,他都敢于直言争谏,敢于坚持正确意见。
有一次,九卿会推江西按察使一职,有人推举道员张仲举担任,御史唐朝彝反对,他认为张仲举既无才学,又无政绩,不宜担任。可是多数人不同意他的反对意见,还起草了弹劾他的奏章。当时,副都御史李仙根、给事中李宗孔不愿在奏章上署名,于是被一并弹劾。康熙帝批转部议,结果二李被降五级调用,唐朝彝被革职。徐元文得知此事,立即上本奏道:九卿会推官员的目的,就是要求众人各抒己见,怎能害怕意见不一?如此处分意见相左者,如果所举不当,谁敢驳正?今科道公疏,不许一人不列名,若一二强有力者操纵廷议,众人只能随声附和,其后果不堪设想。康熙帝认为有理,答应免去诸人处分。
清初为用兵筹饷,实行捐纳授官政策,规定凡捐纳做官的,任满三年后,称职的予以升转,不称职的罢黜,但在实行中罢黜一项悬而未行,后又规定三年期满再捐纳的,一律升转,因而造成仕途壅塞,官吏冗滥,吏治腐败。
徐元文任左都御史时,各部、寺、院有三千多笔贴式要求按照前例捐升官职,他力主不可。有些人惧怕激成事端,主张让步。满族大臣也劝他不要触犯众怒。徐元文也深知笔贴式不是好惹的,他们都是满族权贵子弟,都是负责翻译汉文书、整理簿籍的低级官吏,实际上是皇上委派的情报人员,负有监督、考察各部军政大吏的特殊使命,得罪他们,对自己的仕途无疑是不利的。但他仍不让步,与同僚们争论了三天。后来,他对同僚们说:“这件事当‘独为一议’,由我一人上奏,责任也由我一人承担,决不连累大家。”最后,康熙帝认为徐元文的意见有利于精简官员、澄清吏治,同意采纳。
平定“三藩之乱”后,群臣纷纷上疏康熙说:“天下荡平,皆赖皇上一人功德所致。请他登封泰山,荣受尊号。”徐元文反对大臣们的建议。他认为“三藩”战争已使国家满目疮痍,生民涂炭,现在还不是歌功颂德的时候。当务之急是“振纲纪”、“核名实”、“崇清议”、“厉廉耻”。他建议,乘武定功成之时,要严谕大小官员“崇大体”、“课吏材”、“定国是”、“正人心”,使国家的元气得以恢复。奏稿写成后,同僚们认为疏上言辞太直,会扫了皇上的兴致,劝他不要上奏。徐元文婉拒劝阻,毅然上奏。康熙帝看了徐元文的奏章后,赞同他的建议,登封泰山的大典终于免除。
康熙二十二年(1683年)冬,徐元文因受推举官员失当牵连,被降调史局,负责监修《明史》。当时史局已建立五年,修史工作进展缓慢。徐元文到任后,心无旁顾,埋头修史。他取来史局诸人所写的纪传稿,参照百家之说,逐条考订史实。他治史严谨,每遇疑问,或写信,或送钱,敬请熟知前朝典故的人解难释疑。在他的领导下,修史进度很快,一年之内,完成传记十之六七,缮写本纪7卷、列传15卷,进呈康熙帝。
修史虽是学术性工作,实则政治性极强。关于南明诸王及其大臣史事如何处理,是《明史》编纂体例中最为敏感的政治问题,处理不好,会触怒皇上。由于秉笔直书而触犯皇上、招致被革杀的史官,在历朝历代中并不少见。一些人出于顾虑,主张以崇祯十七年(1644年)三月明朝覆亡为断,南朝诸帝不必写入。徐元文不同意,他认为南朝明诸王是客观存在的史实,不写入他们,《明史》何以为史书。争论不决之后,他毅然上疏,提出了关于编纂南明诸王史事的意见。他说:“《明史》的编写,本纪可以崇祯帝终止,但南明福、唐、桂三王史迹,不可以不著,如何写入?请援用《宋史》益、卫二王和《辽史》耶律大石之例,将三王著入附传。至于明末诸臣尽忠所事者,凡考之有据者,都应当采摭。”康熙帝看了徐元文的奏本,一时也委决不下,他召见徐元文,详细询问缘由。康熙帝沉思良久,点首同意徐元文的编纂意见。南明诸王及为其尽忠的大臣们的史事,由于徐元文的力谏,在《明史》中得以再现。
康熙二十七年(1688年),明珠罢政后,明珠的主要政敌、徐元文之兄徐乾学被提升为刑部尚书。徐家兄弟二人俱是朝中显宦,自然招人眼红。其实,徐元文与其兄徐乾学两人在性格上大相径庭:徐乾学颇爱招权纳贿,拉帮结派,而徐元文则恪守官箴,门庭肃然。此间,明珠余党虽然损失严重,但仍具有一定势力,他们对徐乾学进行报复,自然也殃及徐元文。徐元文的子侄不贤,巧取豪夺,为恶乡里,给政敌提供不少口实,因而徐元文一再遭劾。最终,康熙帝不得不过问此事,法外加恩,让他致休回籍。
徐元文乘船回籍,路过临清关。明珠余党挟嫌报复,指使人无礼喝令停船检查,甚至连徐元文夫人的衣物都不放过,到处翻腾,结果却一无所获,只查出图书数千卷和光禄馔金300两,胥吏们也纷纷赞扬徐元文的清正廉洁。徐元文性格刚直,从不趋避祸福利害,遭受官吏无端摧辱,心气难平,以致咯血不止,回家后便卧病不起,于康熙三十年(1691年)闰七月二十七日卒,时年58岁。