C#使用枚举器反编译类

时间:2016-05-10 13:19:26

标签: c# decompiling

我试图反编译一个c#dll和一个特定的方法我得到了这个结果

relevantTopicIds

它在DatabaseHandler中调用内部类Class106,但它似乎无法反编译这个内部类。

我尝试了dotPeek,ILSpy,JustDecompile和Reflector。

我得到的最好的结果是使用Reflector,它部分地反编译了类。定义如下:

public IEnumerable<Guid> GetDbIdentifiers(int classId)
{
    switch ((794999935 == 794999935) ? 1 : 0)
    {
    case 0:
    case 2:
        IL_1E:
        break;
    case 1:
        goto IL_1F;
    }
    goto IL_1E;
    IL_1F:
    if (0 == 0)
    {
    }
    if (1 == 0)
    {
    }
    int arg_2E_0 = 0;
    DatabaseHandler.Class106 @class = new DatabaseHandler.Class106(-2);
    @class.databaseHandler_0 = this;
    @class.int_3 = classId;
    return @class;
}

我在许多论坛中读到,枚举器被反编译为内部类,没有反编译器可以生成可用的代码。似乎是这种情况,因为Class106实现了IEnumerable和IEnumerator接口。

有没有人知道如何手动修补这个?

0 个答案:

没有答案