I have the following code below for a payroll program.
The first dictionary holds the employee IDs and corresponding basic pays held in a master data table.
The second dict
You can use FirstOrDefault() but SingleOrDefault throws an exception if more than one element exists.
Here you can see exactly what the single or default method does:
http://msdn.microsoft.com/en-us/library/system.linq.enumerable.singleordefault(v=vs.100).aspx