Using Linq and generics with a Repository

I have been creating a final year project piece for my part time study that I have called CabControl. Basically it is a piece of Taxi rank software. The design is made much easier as we only have to account for account work. I have tried to make the work I have done as close to commercially useable as possible however there are some obvious omissions and that is mainly because I have to do it in spare time in between a million other assignments and interests.

The course language is in VB.NET and the database we were advised to use was an Ms Access one. I could have done it like this and sure, it would have been easy but I really wanted to learn something out of this so I asked if I could use some more funky up to date technologies in mine and so have used C# .NET 3.5 and all that it includes.

One thing I really wanted use was the Linq to SQL classes. A lot of people have not taken to this in favour of NHibernate (including my work place) as the Linq to Sql has some questionable features and is not as scaleable. However for small projects you can get going really quickly with it.

Once you have created your tables in SQL just drag them onto the Linq to SQL class screen to create on the fly classes for your tables


Any relationships that were in your tables are kept in the classes as well. For example;

The relationship between an Account and a booking is that an Account can have 0, 1 or many bookings. This means that through the Account object that is created you can call upon these bookings and then iterate through them or alternativatley you can access the related account object through the Booking object such as:

booking.Account.Name; Check the MSDN website out for more details on setting it up, there are quite a few blogs on it, also check out Scott Gus blogs tutorials on ASP.NET MVC on http://www.asp.net/learn/mvc/

Comments

Popular posts from this blog

Follow on from home automation post

Functional Filtering in Javascript

Derbyshire Dot Net Talk - Writing Robust Systems