IThemeContext:皮膚上下文,支持桌面皮膚和移動段皮膚。其實體類為:ThemeContext;
IThemeProvider:皮膚提供者,其實體類為ThemeProvider;皮膚提供者從皮膚配置文件中解析配置項,加載系統提供的所有皮膚方案,系統默認提供桌面干淨皮膚(~/Themes/DefaultClean)和移動端皮膚(~/Themes/Mobile)。ThemeConfiguration是對theme.config數據的解析對象。
IThemeContext從IThemeProvider中獲取解析的配置方案。
上節我們講到自定義視圖引擎,從視圖引擎的名字(ThemeableRazorViewEngine)上可以知曉,它實現了對皮膚的自動加載功能。
視圖引擎從IThemeContext中獲取當前的皮膚,並解析加載。