title: Using a parameter's property in an ArgumentException
body: <p>Our SonarQube often raises the following issue (Code Smell) on our code: "Parameter names used into ArgumentException should match an existing one". <a href="https://rules.sonarsource.com/csharp/RSPEC-3928" rel="nofollow noreferrer">Here</a> is the rule that triggers this issue.</p>
  
  <p>An example of this issue being triggered can be the following:</p>
  
  <pre><code>private void Validate(SaveCommand command)
  {
      if(string.IsNullOrEmpty(command.UserCode))
          throw new ArgumentNullException(nameof(command.UserCode));
      ....
  }
  </code></pre>
  
  <p>My question is: How do i properly refactor the code to abide by SonarQube (and <a href="https://docs.microsoft.com/en-us/dotnet/standard/design-guidelines/using-standard-exception-types" rel="nofollow noreferrer">MSDN</a>) guidelines?</p>
  
  <p>Or should i just keep it like this. If so, why?</p>