使用DnSpy修改代码

起因

有时候会遇到没有代码,还想修改线上项目的时候,该怎么办呢? 这个时候就需要神器上场了,这里的神器就是DnSpy. 至于DnSpy这个神器我一直在安利,因为是真的很好用.

事件的起因是这样的,大概在2019年底的时候,一个医院提了些需求,该项目已经上线了3年左右的时间,在把需求修改完之后,就在下班之后,进行了远程更新.不过后面医院觉得部分需求需要调整原先的版本.等后面在统一调整,也就是当时只是部分需求,所以当时这一块的代码也就没进行提交(注意这里有坑).

在2020年5月,我办理了离职,结束了8年的北漂. 当然在离职的时候,负责的项目,也进行了交接.只是遗漏了上边说的这个项目.代码没提交.

于是在2021年5月份的时候,原先同事去那家医院的新院区上新系统的时候,医院对当时我负责的那个项目提了些小需求,改动不大.但由于找不到最后提交的代码.所以最后问我怎么处理这个问题.

如何解决c#项目没有源码的时候,怎么修改?

还好,当时项目是把sql写入xml文件中,在项目编译的时候,会把xml文件嵌入到资源中.使用DnSpy在资源中,找到对应xml文件.右键编辑资源.
通过DnSpy修改Dll中资源中xml文件

秋风 2021-06-06