public ReportActionCommandControl() { InitializeComponent(); var reportPath = ServiceLocator.Current.BaseDirectory + ApplicationConfig.GetAppSettingValue("ReportPath", "..\\Reports\\"); reportFiles.ItemsSource = GetReportFiles(reportPath); }
private static void LoadExtensionTypes() { var extensions = ApplicationConfig.GetAppSettingValue(ContentModelComponents, "") .Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); Func <string, bool> canLoad = (fileName) => { if (extensions.Length == 0) { return(true); } foreach (var ext in extensions) { if (ext.StartsWith("*")) { if (fileName.EndsWith(ext.Substring(1), StringComparison.OrdinalIgnoreCase)) { return(true); } continue; } else if (ext.EndsWith("*")) { if (fileName.StartsWith(ext.Substring(0, ext.Length - 1), StringComparison.OrdinalIgnoreCase)) { return(true); } continue; } else { if (fileName.Equals(ext, StringComparison.OrdinalIgnoreCase)) { return(true); } continue; } } return(false); }; AppDomain.CurrentDomain.GetAssemblies() .Where(asm => canLoad(asm.FullName.Substring(0, asm.FullName.IndexOf(',')))) .ForEach(a => { a.GetTypes().Where(t => t.FullName.StartsWith("Panasia.")) .ForEach(t => { _ExtensionTypes[t.FullName] = t; }); }); }
static RazorService() { var templateService = new TemplateService(); List <string> nameSpaces = "Panasia.Core|Panasia.Core.Contents|Panasia.Core.App|Panasia.Core.Commands|Panasia.Core.Sys|Panasia.Core.Web" .Split('|').ToList(); var imports = ApplicationConfig.GetAppSettingValue("RazorImports", ""); if (!string.IsNullOrEmpty(imports)) { imports.Split('|').ForEach((ns) => { var item = ns.Trim().TrimEnd(';'); if (!nameSpaces.Contains(item)) { nameSpaces.Add(item); } }); } //ApplicationConfig.GetAppSettingValue("RazorImports","") // .Split('|').ForEach((ns) => // { // var item = ns.Trim().TrimEnd(';'); // if(!nameSpaces.Contains(item)) // { // nameSpaces.Add(item); // } // }); nameSpaces.ForEach((ns) => { templateService.AddNamespace(ns.Trim().TrimEnd(';')); }); RazorEngine.Razor.SetTemplateService(templateService); }