protected internal void SetIncludes(AppConf conf, LayoutModel layoutModel) { Args.ThrowIfNull(conf, "AppConf"); Args.ThrowIfNull(conf.BamConf, "BamConf"); Args.ThrowIfNull(conf.BamConf.ContentRoot, "ContentRoot"); ApplicationServiceRegistry reg = ApplicationServiceRegistry.ForApplication(conf.Name); IIncludesResolver includesResolver = reg.Get <IIncludesResolver>(); Includes commonIncludes = new Includes(); if (IncludeCommon) { commonIncludes = includesResolver.ResolveCommonIncludes(conf.BamConf.ContentRoot); } Includes appIncludes = includesResolver.ResolveApplicationIncludes(conf.Name, conf.BamConf.ContentRoot); Includes combined = commonIncludes.Combine(appIncludes); StringBuilder styleSheetLinkTags = new StringBuilder(); foreach (string css in combined.Css) { styleSheetLinkTags.AppendLine(StyleSheetLinkTag.For(css).Render()); } layoutModel.StyleSheetLinkTags = styleSheetLinkTags.ToString(); StringBuilder scriptLinkTags = new StringBuilder(); foreach (string script in combined.Scripts) { scriptLinkTags.Append(ScriptTag.For(script).Render()); } layoutModel.ScriptTags = scriptLinkTags.ToString(); }
public ApplicationModel(AppConf appConf, ApplicationServiceRegistry applicationServiceRegistry) { AppConf = appConf; ApplicationServiceRegistry = applicationServiceRegistry; Log = ApplicationServiceRegistry.Get <ILog>(); ApplicationServiceRegistry.Get("Startup", out Type startupType); if (startupType != null) { ApplicationNameSpace = startupType.Namespace; } WebServiceRegistry = ApplicationServiceRegistry.Get <WebServiceRegistry>(); Name = appConf.Name; ApplicationServiceRegistry.SetInjectionProperties(this); RepositoryProviderResolver = ApplicationServiceRegistry.Get <IRepositoryResolver>(); ApplicationNameProvider = new StaticApplicationNameProvider(appConf.Name); Organization = new OrganizationModel(); }