Как восстановить информацию о частичном классе из DLL? - PullRequest
2 голосов
/ 08 сентября 2010

DLL содержит частичный класс DisPart, определенный в двух местах:

public partial class DisPart
{
    public static string s;
}


public partial class DisPart
{
    public static int i;
}

Разборка DLL в Reflector приводит к:

public class DisPart
{
    public static int i;
    public static string s;
}

Есть ли возможность восстановить информацию:

1) был ли класс partial?

2) как были разделены определения членов класса?

Ответы [ 2 ]

2 голосов
/ 08 сентября 2010

Файл PDB, вероятно, будет указывать на оба из них, поскольку он будет содержать информацию о номере строки - по крайней мере, для методов (и я бы ожидал для переменных тоже). Я не ожидаю , это было бы в самой DLL. Я также не знаю, насколько легко было бы обнаружить, даже если бы у вас была PDB, если честно - я не знаю, каков формат файла PDB.

1 голос
/ 08 сентября 2010

Нет, частичный модификатор предназначен только для использования создателем класса, так что он может быть разделен между несколькими файлами. Во время компиляции части класса объединяются.

...