There's a good explanation of procedures for Class B, all of which makes sense since pilots need specific clearance to enter Class B: How do I "sightsee" in a class Bravo airspace??
However, I wonder how much this changes for C and D. While a pilot does not need specific clearance to enter the Charlie and Delta, the local ATC can still direct the pilot to stay clear. This in effect means that ATC has the same control over Charlie and Delta airspace as in a Bravo. However, what isn't captured in the FARs is what kind of rationale ATC needs to refuse a pilot request, and if that changes based on the airspace.
In short, can ATC (reasonably) refuse sightseeing flights in Charlie and Delta?