Read our blogs, tips and tutorials
Try our exercises or test your skills
Watch our tutorial videos or shorts
Take a self-paced course
Read our recent newsletters
License our courseware
Book expert consultancy
Buy our publications
Get help in using our site
551 attributed reviews in the last 3 years
Refreshingly small course sizes
Outstandingly good courseware
Whizzy online classrooms
Wise Owl trainers only (no freelancers)
Almost no cancellations
We have genuine integrity
We invoice after training
Review 30+ years of Wise Owl
View our top 100 clients
Search our website
We also send out useful tips in a monthly email newsletter ...
Software ==> | Visual C# (55 exercises) |
Topic ==> | LINQ with Entity Frameworks (4 exercises) |
Level ==> | Harder than average |
Subject ==> | C# training |
This exercise is provided to allow potential course delegates to choose the correct Wise Owl Microsoft training course, and may not be reproduced in whole or in part in any format without the prior written consent of Wise Owl.
This will generate the database that you'll need to use in order to do this exercise (note that the database and script are only to be used for exercises published on this website, and may not be reused or distributed in any form without the prior written permission of Wise Owl).
If you haven't already done so, go into SQL Server Management Studio and open the file in the above folder and run its script. This should generate a WorldEvents database. Create an ADO entity model based upon this database.
The method of creating an entity model is not given here, since it varies according to which version of Windows Forms, Visual Studio, LINQ to SQL Classes and Entity Frameworks you are using. If in doubt, ask your trainer!
Here is one version of the entity framework to show you which tables and fields you can reference:
The database contains four tables with relationships between them.
Create a form called frmChoose to contain two combo boxes and a clickable button as shown below, then create LINQ statements to set the data source for the continent combo box to get this:
When you open the form, the combo box should show a list of the continents in the database (although it's actually the continent id which is being stored).
Your LINQ statement should return an anonymous type containing two fields
Field | What it should hold |
---|---|
Id | The id number of the continent |
Name | The name of the continent |
You can then run these statements to populate the combo box:
cmbCategory.ValueMember = "Id";
cmbCategory.DisplayMember = "Name";
// set this to be basis for combo box
cmbCategory.DataSource = categories.ToList();
In a similar way, populate the category combo box.
Add a datagridview to the bottom of the form. Run a third LINQ statement from the button, so that when you click on it you see a list of all of the events for the continent and category you've chosen. For example:
Africa has 3 politics events in the database.
Check that if a particular continent/category combination has no events, you get a suitable message:
Africa has no alien events (at least, not in the Wise Owl database).
Give yourself a big pat on the back, and close down your forms.
You can find other training resources for the subject of this exercise here:
Kingsmoor House
Railway Street
GLOSSOP
SK13 2AA
Landmark Offices
99 Bishopsgate
LONDON
EC2M 3XD
Holiday Inn
25 Aytoun Street
MANCHESTER
M1 3AE
© Wise Owl Business Solutions Ltd 2024. All Rights Reserved.