ObfuscateAssemblyAttribute Constructor (Boolean)

 

Initializes a new instance of the ObfuscateAssemblyAttribute class, specifying whether the assembly to be obfuscated is public or private.

Namespace:   System.Reflection
Assembly:  mscorlib (in mscorlib.dll)

public ObfuscateAssemblyAttribute(
	bool assemblyIsPrivate
)

Parameters

assemblyIsPrivate
Type: System.Boolean

true if the assembly is used within the scope of one application; otherwise, false.

Mark assemblies as private if they are used only by your application, and are not libraries to be used by other software. Generally, marking an assembly as private tells an obfuscator that it can obfuscate the names of all methods, including public methods, as part of obfuscating an application. If an assembly is public, an obfuscator should not obfuscate the names of public members.

System_CAPS_importantImportant

Applying this attribute does not automatically obfuscate the assembly. Applying the attribute is an alternative to creating a configuration file for the obfuscation tool. That is, it merely provides instructions for an obfuscation tool. Microsoft recommends that vendors of obfuscation tools follow the semantics described here. However, there is no guarantee that a particular tool follows Microsoft recommendations.

The following code example shows how the attribute constructor specifies that an assembly is private. The StripAfterObfuscation property is false, to prevent the obfuscation tool from stripping the attribute after processing.

using System;
using System.Reflection;

[assembly: ObfuscateAssemblyAttribute(true, 
    StripAfterObfuscation=false)]

.NET Framework
Available since 2.0
Return to top
Show: