Исключение при переименования — из исходного кода
Задавать исключения можно непосредственно в исходном коде (C#, VB и т.д.).
Для этого нужно использовать атрибут System.Reflection.Obfuscation
[System.Reflection.Obfuscation( Exclude = true [, ApplyToMembers = true|false [, Feature = "Public"]])]
Например:
//
// Исключить из переименования класс 'Class1' со всем вложением
//
[System.Reflection.Obfuscation(Exclude = true, ApplyToMembers = true)]
public class Class1
{
public void Function1() { }
protected void Function2() { }
internal void Function3() { }
}
--------------------------------------------------------------------------------
//
// Исключить из переименования класс 'Class1' со всеми дочерними Public элементами
//
[System.Reflection.Obfuscation(Exclude = true, ApplyToMembers = true, Feature = "Public")]
public class Class1
{
public void Function1() { }
protected void Function2() { }
internal void Function3() { }
}
--------------------------------------------------------------------------------
//
// Исключить из переименования только метод 'Function2'
//
public class Class1
{
public void Function1() { }
[System.Reflection.Obfuscation(Exclude = true)]
protected void Function2() { }
internal void Function3() { }
}
--------------------------------------------------------------------------------
//
// Исключить из переименования только класс 'Class1' и метод 'Function2'
//
[System.Reflection.Obfuscation(Exclude = true)]
public class Class1
{
public void Function1() { }
[System.Reflection.Obfuscation(Exclude = true)]
protected void Function2() { }
internal void Function3() { }
}