title: Winforms Application Architecture using LinqToSql
body: <p>I am starting a new Winforms application, and I've always used traditional ADO.NET methods in my DAL (...yes, hardcoding!)</p>
  
  <p>I have used Linq on many ocassions previously, but more for <em>adhoc</em> queries, so I have some experience with it and I loved how easy it was to write querying code.  What I would like to perhaps do is replace my existing DAL with pure LINQ queries.  I know that they may be areas of concerns with this, which is why I need your help.</p>
  
  <p>If I had to do things like how I always had done in the past, I would structure my app like:</p>
  
  <ul>
  <li>[AppName].ClientUI   --> desktop client Presentaion layer</li>
  <li>[AppName].WebUI      --> web Presentation layer</li>
  <li>[AppName].DAL        --> ADO.NET Data access layer</li>
  <li>[AppName].BLL        --> Business logic layer (validation, extra calcs, + manager classes)</li>
  <li>[AppName].BE         --> Business Entities containing business objects and collection classes</li>
  </ul>
  
  <p>To be honest, I've used this always in web apps and had never done an n-layered Winforms app before.</p>
  
  <p>If I want to replace my old DAL methods with LINQ ones, what challenges am I in store for.</p>
  
  <p>Finally, is it even recommended to use LINQ in a multi-layered app? Sometimes I think that using the old ADO.NET methods is still better...more work, but better. I mean - and correct me if Im wrong - at the core of all these new technologies (that are meant to make our work as developers better) are they not all still making use of traditional ADO.NET???</p>
  
  <p>Hope someone can shed some strong light on this! :)</p>