This additional constraint enables adding a route to the template (and p...

...otentially to the UseMvc method) without actually implementing the actual artifact.

For example without adding an area to a controller, a route can still be added to the template.
O I C. BTW it's not "converting" anything here - it's merely checking that it's already a particular type. But throwing is probably a good idea because if it's not a string then You're Doing It Wrong(tm).