Like me dealing with the new database projects in VS2010, and like me learning LINQ to SQL, I'm curious regarding the easiest method to link the 2 categories of information to ensure that after i update one, another updates together with it.

From the research at SO, too as with Google, it seems the overall guideline is: "Build the database, after which make your LINQ to SQL classes." Obviously, basically make a general change in my database, the LINQ to SQL does not update instantly and I must get it done manually. This really is quite simple at this time as my database is small, but I'm curious if there's an simpler way to do this.

Additionally, the LINQ to SQL tool is fairly nice. A chance to create tables, add associations, as well as create inheritance really is easy. As my second question, I'm curious whether or otherwise VS2010 can function another way - I design the database within the DBLM file after which link it to my database project.

I appreciate any assist with either of those two questions. I am really thinking about causeing this to be pretty simple to lessen errors throughout development and enhance the speed where changes can be created.

Jason - We've built a mission critical L2S based application platform for the photo voltaic business. I had been mainly accountable for building the rear-finish data access layer. In early stages I recognized that maintaining b .DBML would be considered a royal discomfort within the backside. Any time you add/update/remove objects within the schema, the DBML should be up-to-date. Which is not easy to complete. My solution ended up being to build our very own code generator that creates our L2S classes, application level classes (a light-weight version from the L2S classes), and all sorts of the logic/DAL code. By doing this, every time we create a schema change, we simply run the code generator and things are produced for all of us.

I greatly like L2S, but without our custom code generator, I believe I'd have drawn my hair out right now. Besides, it appears that occasionally, the produced classes in the .DBML are simply plain wrong.