Sorry if my answers felt rude, I just tried to get them on point. By the way a lot of things changed in 3.5 but I tried my best to make everything as much backwards compatible as possible... This especially this place (dynamic/anonymous classes) is a minefield...

It might have worked in the past because we used to try to "guess" the type with a combination of generic parameter and "model.GetType()" which often worked as expected, often worked (but not as one would imagine) and sometimes failed in some corner cases.

But from your description I would say it was a bug if it ever worked (without knowing the exact template and RazorEngine call you used)