Basic Multi Database SQL an Access Program Design RRS feed

  • Question

  • Hi i want to start a basic project but it might be extend in the future. Now it will be work with both Access and SQL Database. First it is an windows application but  in the future it can be web. As a reason program must be extendeble. At first it has tables Customer (id,name,phone,adress,vs..), Stock(Id,name,price) and Bill (Id,CustomerId,Date,...) ,
    As you see it is basic application
    For multi db what shoul i use. ADO.NET Entity Framework or Linq or LLBLGEN or etc. which one is better for Access and SQL Server.
    I divide solution into four projects.WinnApp.csporj, WebApp.csporj, Reports.csporj, Helper.csporj , Business.csporj , DAO.csporj

    I want to use Design Patterns and good design in a small application.

    Can you give me tips and tricks or Source Code example .

    Thanks a lot
    Friday, September 25, 2009 11:21 AM

All replies

  • If you feel like your views might change (windows app/web app) make sure you use MVP/MVC patterns on the front end.  Otherwise I would suggest to follow the standard breakdown of the "middle" tier, Service Layer -->  Business Layer --> Data Access Layer.  If you want to be completely database independent an ORM will definitely help.  Entity Framework 3.5 is very basic in feature set, but might be more than sufficient for what you're trying to do.  Keep in mind that at this point EF only supports Sql Server.  If you need to be open to Oracle (etc) you have to use something like NHibernate, hopefully this will change with Entity Framework 4.0.

    Lastly, don't worry too much about each and every abstraction you hear about, there is no end to "good" design.  In my experience it's imporant to get the basics right (your tiers etc.), you can refactor in the future from there.
    Friday, September 25, 2009 7:53 PM
  • Thanks for your reply.
    The best design for database dependend application is use ORM . But i don't like ORMs too much. I feel loose the control of the entity classes when i use ORM. It is not true may be but i feel lke this.
    Sunday, September 27, 2009 6:33 PM
  • NHiberanate operates on POCO objects, unlike the current EF, this will allow you to author your object as you wish without any dependency on the ORM.  EF 4.0 will also have this feature.
    Monday, September 28, 2009 2:15 PM