public static DbModelPlus GetCodeFirstModel(XDocument xml) { var model = new DbModelPlus(); var root = xml.Root.RemoveAllNamespaces(); var conceptualString = root.Element("Runtime").Element("ConceptualModels").Elements().ElementAt(0).ToString(); var storageString = root.Element("Runtime").Element("StorageModels").Elements().ElementAt(0).ToString(); var mappingString = root.Element("Runtime").Element("Mappings").Elements().ElementAt(0).ToString(); model.ConceptualModel = conceptualString.DeserializeXml<Schema>(); model.StoreModel = storageString.DeserializeXml<Schema>(); model.MappingModel = mappingString.DeserializeXml<SchemaMapping>(); BuildSchema(model.ConceptualModel); BuildSchema(model.StoreModel, true); BuildMapping(model.MappingModel, model.ConceptualModel, model.StoreModel); return model; }