Our scenario for using XAML on the server side is the following one :
v2 of our in-house web framework (used internally by several hundred developpers) has two important requirements :
- the applications must support both a Silverlight or a standard HTML front end, dependending on the channel used to access them (with a common declarative view model, but two different presentation templates)
- the server-side HTML control tree should be described in a much more strongly typed way than with traditional ASP.Net webform syntax (which is only about building a big string ...) if we want to be able to handle backward compatibility
The natural choice was thus to use a XAML syntax to describe a strongly typed control tree for our HTML rendering engine, and even to reuse all of the "logical tree optimization" notions offered by Silverlight & WPF : resources, styles, controls, templates, and dependency properties (knowledge & tools reuse).
We first thought we would be able to use PresentationFramework.dll to load our XAML page descriptions, but AFAIK, there is no way for XamlReader.Load to initialize attached properties, styles ... without depending on the property system, binding expressions ... of WPF (objects derived from FrameworkElement), which does not fit our needs.
I really think there is a strong need in the community for a .Net 2.0 compatible version of System.Xaml.dll, as it could help speed up XAML adoption for a wider range of scenarios. I can see ISVs producing XAML-based tools also being stuck with a .Net 2.0 CLR on their clients machine for a while.