title: Extension Method vs. Helper Class
body: <blockquote>
    <p><strong>Possible Duplicate:</strong><br>
    <a href="https://stackoverflow.com/questions/4646328/extension-methods-vs-static-utility-class">Extension Methods vs Static Utility Class</a>  </p>
  </blockquote>
  
  
  
  <p>I am building an API of general functions which perform actions based upon objects in .NET. For example; I have created a function that checks a string to see if it is an email address.</p>
  
  <p>I could either have:</p>
  
  <pre><code>static bool IsEmailAddress(string text)
  {
      return IsMail(text);
  }
  </code></pre>
  
  <p>or I could create an extension method that would be used like so: </p>
  
  <pre><code>string text = "HelloWorld@Email.com";
  if (text.IsEmailAddress())
  {
  }
  </code></pre>
  
  <p>which is more suitable, or do you think since this is a general purpose library, I could technically implement it both ways and allow the developer to decide which is best for them?</p>