MonoMac 0.0.0.0 System.Attribute System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Struct | System.AttributeTargets.Enum | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Property | System.AttributeTargets.Field | System.AttributeTargets.Event | System.AttributeTargets.Interface | System.AttributeTargets.Delegate | System.AttributeTargets.All) Prevents the MonoMac linker from linking the target.

This attribute is used at link time by the MonoMac linker to skip certain classes, structures, enumerations or other objects from being linked.

By applying this attribute all of the members of the target will be kept as if they had been referenced by the code.

This attribute is useful for example when using classes that use reflection (for example web services) and that use this information for serialization and deserialization.

- Constructor
  0.0.0.0
  To be added.
  To be added.
- Field
  0.0.0.0
  System.Boolean Ensures that all members of this type are preserved. All members of this type, including fields, properties, methods, subclasses are preserved during linking.
- Field
  0.0.0.0
  System.Boolean Flags the method as a method to preserve during linking if the container class is pulled in.

  If the Conditional value is set on a Preserve attribute on a method, then the method will be preserved if the containing NSObject is kept after the linker has done its job.

  You would typically use this for callbacks that you know will be called in your code dynamically (for example with a selector invocation from Objective-C) since a static linker would not be able to infer that this particual method is required.