C# Error
CS0685 – Conditional member ‘{0}’ cannot have an out parameter
Reason for the Error & Solution
Conditional member ‘member’ cannot have an out parameter
When using the attribute on a method, that method may not have an out parameter. This is because the value of the variable used for the out parameter would not be defined in the case that the method call is compiled to nothing. To avoid this error, remove the out parameter from the conditional method declaration, or don’t use the Conditional Attribute.
Example
The following sample generates CS0685:
// CS0685.cs
using System.Diagnostics;
class C
{
[Conditional("DEBUG")]
void trace(out int i) // CS0685
{
i = 1;
}
}