理解由Reflector重建的C#字符串

时间:2010-03-06 23:47:56

标签: c# reverse-engineering reflector

我被要求帮助处理源代码不再可用的C#项目。幸运的是,项目的非混淆调试版本可用,所以我通过Reflector运行它,重建的源代码看起来很好。

我有一个奇怪的问题。一些非常明显应该是字符串的对象如下所示:

string str7 = new string();
str7.Value = strArray3[k];

现在,string没有无参数构造函数,也没有Value属性。我想我可以删除实例化并删除.Value属性,事情可能会按预期工作,但我想了解是否有更多的事情比Reflector bug更多。

另一个有趣的部分是,几乎所有的变量都是用原始名称重建的,但是这个(以及其他几个)似乎已被赋予随机名称。

非常欢迎任何见解。

1 个答案:

答案 0 :(得分:1)

对于发生这种情况的相同方法,您是否可以发布IL和反编译的C#?

那个程序集中没有偶然的“类字符串{...}”,是吗?