I've almost resolved this issue.I managed to display the exception that was being thrown and it was this:
Request for the permission of type 'System.Data.SqlClient.SqlClientPermission, System.Data,Version=18.104.22.168, Culture=neutral, PublicKeyToken=b77a5c561934e089'failed.
With some research I found the following solution (Sharepoint developers please file this away in your notes):
Anything that access database from SP requires at least the WSS_Medium security policy in the web.config file. If you receive a security message from the web part, it's usually the trust element in the web.config file.
Open wss_mediumtrust.config & wss_minimaltrust.config usually (C:\Program Files\Common Files\Microsoft Shared\Web Server tensions\12\config\) look in your web.config file for the exact path.
Find in wss_mediumtrust.config: <SecurityClass Name="SqlClientPermission" Description="System.Data.SqlClient.SqlClientPermission, System.Data, Version=22.214.171.124, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
Copy and paste it in to the <SecurityClasses> node of wss_minimaltrust.config. In the PermissionSet section of this configuration file,
add the following: Find in wss_mediumtrust.config: <IPermission class="SqlClientPermission" version="1" Unrestricted="true"/>
Copy and paste it in to the a <PermissionSet> node of wss_minimaltrust.config.
That about covers it.
At this point I can make my code work with a basic ASP.NET DropDownList but not with a RadComboBox, which throws the following exception around the combo.DataTextField = "Location" (from code snippet above) line:
Object reference not set to an instance of object