我有一个已经构建的程序集,但我需要修改它的版本号。有没有办法在不重新编译的情况下执行此操作?
答案 0 :(得分:2)
根据这个answer你可以。
答案 1 :(得分:1)
程序集版本号保存在多个位置。使用程序集的强名称报告的那个在程序集元数据表(ECMA-335§22.2)中。但是,您可以通过代码访问的AssemblyVersionAttribute
关联的那个作为参数化构造函数参数位于“blob”数据部分(ECMA-335§23.3)中。由于两个位置中的数字都是固定的字节数,因此您可以在不重新编译的情况下进行更改。 然而如果要对程序集进行签名,则会破坏签名,因此需要在签署程序集之前执行此操作。