title: Difference between Linq to Sql, Linq, Typed Datasets, ADO.NET
body: <p>I been wondering about this for a while. It seems like there are so many ways now I don't know when to use what? Or if there is even a point to learn them. Like I don't know if they basically do all the same things and just basically stick with one till you master it then maybe look at other ones.</p>
  
  <p>So when I was taking an ASP.NET course that was part of my program.</p>
  
  <p>We first did like ADO.NET where we just wrote everything with SQL statements in the code. We then moved onto a 3 tier architecture. This was done by making like classes and having datasets that return stuff.</p>
  
  <p>The SQL was written in the class. I personally never really liked this way since I always found it annoying with trying to get the quotes right and just overall did not like it.</p>
  
  <p>I then found on the Asp.net site their tutorial of 3 tier arch that I really liked. They where using typed data sets. You add the dataset file to you DAL folder and you would make table adapters and stuff through the GUI. You would then write you code in these GUI, I found it the perfect solution since now my SQL code was away from my code and I did not have to worry about quotes and all that stuff not being right or closing the connections and stuff plus it even had a SQL GUI builder!</p>
  
  <p>Then I would just make file in the BLL folder and make a property to grab the table adapter and write my business layer logic.</p>
  
  <p>The only thing I did not like was since it was typed if my stuff tried to return some new rows it would get mad.</p>
  
  <p>So when I had to join tables I usually had to make a new table adapter.</p>
  
  <p>Now there seems to be so many of them.</p>
  
  <ul>
  <li>Linq -> what some people said would replace ADO.NET and some said it would not.</li>
  <li>Linq to sql </li>
  <li>ado.net</li>
  </ul>
  
  <p>I am not sure if that is all of them probably not.</p>
  
  <p>Before writing this post I did a quick check to see what linq to sql was about and saw some posts saying that MS was killing it off. They where from like 2008 so I don't know if this is true or not but I noticed that almost all the MVC books use like linq to sql so I don't think it is.</p>
  
  <p>So is it worth switching to something a different one then typed datasets? Or are each used for different situations?</p>