The analyzer detected a constructor with an unused parameter.
For example:
public class MyClass { protected string _logPath; public String LogPath { get { return _logPath; } } public MyClass(String logPath) // <= { _logPath = LogPath; } }
It seems that the programmer made a typo and wrote 'LogPath' instead of 'logPath', which resulted in not using the constructor's parameter anywhere in the code. The fixed version:
public class MyClass { protected string _logPath; public String LogPath { get { return _logPath; } } public MyClass(String logPath) // <= { _logPath = logPath; } }
Consider one more example.
public class MyClass { public MyClass(String logPath) // <= { //_logPath = logPath; } }
If you deliberately avoid using a constructor's parameter, we recommend that you mark the constructor with the 'Obsolete' attribute.
public class MyClass { [Obsolete] public MyClass(String logPath) // <= { //_logPath = logPath; } }
You can look at examples of errors detected by the V3117 diagnostic. |