I have this issue, programmatically i have a feature class get it from a map document, and i want to know if this featureclass comes from a shapefile or a SDE database.
The only drawback to using the DataSourceType is that it returns a string in the localized language. Take a look at this post for code to get a language-independent identification of what type it is.