My Beef With Razor
(Note, for non-programmers, this is not about shaving)ASP.NET MVC has shipped the first preview of version 3. This is a good thing, mostly. By default it will be using the brand spanking new Razor view engine… and I’m having a hard time trying to figure out why it’s even in there.
The raison d’être for Razor is to allow for less code in the Views. This too, is a good thing. But I just don’t think it does enough. Here’s one of the samples provided:
It is nice that you don’t need a gigantic header any more, and I like that the masterpage syntax is a little slimmer, but in general all you’re saving are a bunch of <%= %> tags. That’s nice, but is that really that great of an improvement to warrant an entirely new ViewEngine? Am I missing something important here? Especially once you get into non-trivial pages with hundreds of tags and template syntax.
What I think would have been awesome would be to use the reduced <%= %> footprint but also incorporate something like NHaml, which would really minimize the code footprint.