Gets the name of the provider
Provider name or "(unknown)"
This will first attempt to use the ProviderName property, and if that's null (Nothing in Visual Basic) or empty, then look-up the name from the database using ProviderId, and then "(unknown)" if that fails.