public static InspectionSchema LoadFromFile(this string fileName) { if (!File.Exists(fileName)) { var ds = InspectionSchemaFactory.CreateDefaultSchema(); ds.SerializeToXamlFile(fileName); } var schema = fileName.DeserializeFromXamlFile <InspectionSchema>(); return(schema); }
public static InspectionSchema LoadFromAssemblyDir(this string shortFileName) { var dir = typeof(InspectionSchemaExtensions).Assembly.GetAssemblyDirectoryPath(); var fileName = Path.Combine(dir, shortFileName); if (!File.Exists(fileName)) { var ds = InspectionSchemaFactory.CreateDefaultSchema(); ds.SerializeToXamlFile(fileName); } var schema = fileName.DeserializeFromXamlFile <InspectionSchema>(); return(schema); }
public static InspectionSchema GetInspectionSchema() { var dir = typeof(InspectionController).Assembly.GetAssemblyDirectoryPath(); var inspectionSchemaDirPath = dir + "\\InspectionSchema"; var inspectionSchemaFilePath = dir + "\\InspectionSchema\\InspectionSchema.xaml"; if (!Directory.Exists(inspectionSchemaDirPath)) { Directory.CreateDirectory(inspectionSchemaDirPath); } if (!File.Exists(inspectionSchemaFilePath)) { var ds = InspectionSchemaFactory.CreateDefaultSchema(); ds.SerializeToXamlFile(inspectionSchemaFilePath); } InspectionSchema schema; try { schema = inspectionSchemaFilePath.DeserializeFromXamlFile <InspectionSchema>(); } catch (Exception e) { throw; } var files = Directory.GetFiles(inspectionSchemaDirPath); foreach (var file in files) { if (file == inspectionSchemaFilePath) { continue; } var slaveSchema = file.DeserializeFromXamlFile <InspectionSchema>(); if (!slaveSchema.Disabled) { schema.Merge(slaveSchema); } } return(schema); }