Community
Participate
Working Groups
Most of our wizards have a "class" field for the designation of an implementation class. Most of these wizards are based on extension-point schemas, in which the field can have an associated "basedOn" attribute that can designate either an interface or a base type on which the implementation should be based. The problem is that in neither our wizards, nor in the "basedOn" attributes, can you designate both an interface and a base class. Where we've used a "basedOn" interface, we've tried to assume that there is a corresponding base class that we can find in a known location with a name that is similar to that of the interface. That doesn't always work, and it doesn't afford the user much flexibility in selecting their own base class (or interface). I think we should consider making both the implementation class and interface explicit. I don't know how to do that through the schemas (if it can be done there), or whether we would want to take that approach (if we're intending to drop those as the basis for our wizards), but we could put an interface field on our service wizards.