Avoid non-public fields in ComVisible value types
.NET Framework 2.0
| TypeName | AvoidNonpublicFieldsInComVisibleValueTypes |
| CheckId | CA1413 |
| Category | Microsoft.Interoperability |
| Breaking Change | Breaking |
Non-public instance fields of COM visible value types are visible to COM clients. Review the content of the field for information that should not be exposed, or will have unintended design or security impact.
By default, all public value types are visible to COM. However, to reduce false positives, this rule requires the COM visibility of the type to be explicitly stated; the containing assembly must be marked with the System.Runtime.InteropServices.ComVisibleAttribute set to false and the type must be marked with the ComVisibleAttribute set to true.