title: Why would I use static methods for database access
body: <p>So I came across this issues today and I couldn't find some meaningful explanation is there some non-subjective reason to use static methods when it comes to database interactions.</p>
  
  <p>Right now I'm working on a project where everything is made through stored procedures and for example I have some regular methods like :</p>
  
  <pre><code>public void Delete(int clientID)
      {
        //calling store procedure
      }
  </code></pre>
  
  <p>or</p>
  
  <pre><code>public void Save(int clientID)
      {
        //calling store procedure
      }
  </code></pre>
  
  <p>but I also have :</p>
  
  <pre><code>public static Client GetByID(int id)
      {
          //calling stored procedure
      }
  </code></pre>
  
  <p>or</p>
  
  <pre><code>public static int AddNew(string firstName, string lastName...)
      {
        //calling store procedure
      }
  </code></pre>
  
  <p>and since I'm working with <code>.NET</code> for about 9 months and I've been using only <code>Entity Framework</code> and <code>Repository Pattern</code> I can't recall anywhere or any code where static methods were used. Not for standard <code>CRUD</code> operations, neither for more specific tasks related to the database.</p>
  
  <p>So is this something related to the particular way that the database is accessed, is it some practice that can give (even a very small) performance boost, or it's just the developers approach and I shouldn't give it much of a thought when and when to not use static methods in my database related methods?</p>