using Azure; using Domain.XML_Model; using Domain; using System.ComponentModel.DataAnnotations; using System.Xml.Serialization; namespace Domain.XML_Model { // using System.Xml.Serialization; // XmlSerializer serializer = new XmlSerializer(typeof(Root)); // using (StringReader reader = new StringReader(xml)) // { // var test = (Root)serializer.Deserialize(reader); // } [Serializable] //[XmlRoot(ElementName = "extensions")] public class Extension : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } } [Serializable] [XmlRoot(ElementName = "accessoires")] public class Accessoire : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "modif_poids")] public string? ModifPoids { get; set; } [XmlAttribute(AttributeName = "prix")] public int Prix { get; set; } [XmlAttribute(AttributeName = "disponibilité")] public string? Disponibilité { get; set; } [XmlAttribute(AttributeName = "effet")] public string? Effet { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int AccessoireId { get; set; } } [Serializable] //[XmlRoot(ElementName = "améliorations")] public class Amélioration : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "catégorie")] public string? Catégorie { get; set; } [XmlAttribute(AttributeName = "souscatégorie")] public string? Souscatégorie { get; set; } [XmlAttribute(AttributeName = "promotion")] public int Promotion { get; set; } [XmlAttribute(AttributeName = "type")] public string? Type { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "cout")] public int Cout { get; set; } [XmlAttribute(AttributeName = "nb_max_ou_rang")] public int NbMaxOuRang { get; set; } [XmlAttribute(AttributeName = "condition")] public string? Condition { get; set; } [XmlIgnore] public int AméliorationId { get; set; } } [Serializable] [XmlRoot(ElementName = "archétypes")] public class Archétype : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "caractéristiques")] public string? Caractéristiques { get; set; } [XmlAttribute(AttributeName = "mouvement")] public string? Mouvement { get; set; } [XmlAttribute(AttributeName = "blessures")] public int Blessures { get; set; } [XmlAttribute(AttributeName = "traits")] public string? Traits { get; set; } //[XmlAttribute(AttributeName = "traits")] //public string? TraitsAsText { // get { return (Traits.HasValue) ? Traits.ToString() : null; } // set { Traits = !string?.IsNullOrEmpty(value) ? int.Parse(value) : default(int?); } //} [XmlAttribute(AttributeName = "competences")] public string? Competences { get; set; } [XmlAttribute(AttributeName = "talents")] public string? Talents { get; set; } [XmlAttribute(AttributeName = "pouvoirs")] public string? Pouvoirs { get; set; } //[XmlAttribute(AttributeName = "pouvoirs")] //public string? PouvoirsAsText //{ // get { return (Pouvoirs.HasValue) ? Pouvoirs.ToString() : null; } // set { Pouvoirs = !string?.IsNullOrEmpty(value) ? int.Parse(value) : default(int?); } //} [XmlAttribute(AttributeName = "armures")] public string? Armures { get; set; } [XmlAttribute(AttributeName = "armes")] public string? Armes { get; set; } [XmlAttribute(AttributeName = "equipement")] public string? Equipement { get; set; } [XmlAttribute(AttributeName = "menace")] public string? Menace { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int ArchétypeId { get; set; } } [Serializable] [XmlRoot(ElementName = "armes")] public class Arme : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "genre")] public string? Genre { get; set; } [XmlAttribute(AttributeName = "type")] public string? Type { get; set; } [XmlAttribute(AttributeName = "groupe")] public string? Groupe { get; set; } [XmlAttribute(AttributeName = "portée")] public int Portée { get; set; } [XmlAttribute(AttributeName = "modes")] public string? Modes { get; set; } [XmlAttribute(AttributeName = "dégâts")] public string? Dégâts { get; set; } [XmlAttribute(AttributeName = "type_dégâts")] public string? TypeDégâts { get; set; } [XmlAttribute(AttributeName = "pénétration")] public int Pénétration { get; set; } [XmlAttribute(AttributeName = "autonomie")] public int Autonomie { get; set; } [XmlAttribute(AttributeName = "rechargement")] public int Rechargement { get; set; } [XmlAttribute(AttributeName = "attributs")] public string? Attributs { get; set; } [XmlAttribute(AttributeName = "accessoires")] public string? Accessoires { get; set; } [XmlAttribute(AttributeName = "poids")] public int Poids { get; set; } [XmlAttribute(AttributeName = "bonus_bf")] public int BonusBf { get; set; } [XmlAttribute(AttributeName = "prix")] public int Prix { get; set; } [XmlAttribute(AttributeName = "disponibilité")] public string? Disponibilité { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int ArmeId { get; set; } } [Serializable] [XmlRoot(ElementName = "armures")] public class Armure : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "type")] public string? Type { get; set; } [XmlAttribute(AttributeName = "pa_tête")] public int PaTête { get; set; } [XmlAttribute(AttributeName = "pa_bras")] public int PaBras { get; set; } [XmlAttribute(AttributeName = "pa_corps")] public int PaCorps { get; set; } [XmlAttribute(AttributeName = "pa_jambes")] public int PaJambes { get; set; } [XmlAttribute(AttributeName = "effet")] public string? Effet { get; set; } [XmlAttribute(AttributeName = "poids")] public int Poids { get; set; } [XmlAttribute(AttributeName = "prix")] public int Prix { get; set; } [XmlAttribute(AttributeName = "qualité")] public string? Qualité { get; set; } [XmlAttribute(AttributeName = "disponibilité")] public string? Disponibilité { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int ArmureId { get; set; } } [Serializable] [XmlRoot(ElementName = "assermentations")] public class Assermentation : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "seuil_min")] public int SeuilMin { get; set; } [XmlAttribute(AttributeName = "seuil_max")] public int SeuilMax { get; set; } [XmlAttribute(AttributeName = "effet")] public string? Effet { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int AssermentationId { get; set; } } [Serializable] [XmlRoot(ElementName = "attributs_armes")] public class Attribut : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "effet")] public string? Effet { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int AttributId { get; set; } } [Serializable] [XmlRoot(ElementName = "carrières")] public class Carrière : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "effet")] public string? Effet { get; set; } [XmlAttribute(AttributeName = "types_mondes_autorisés")] public string? TypesMondesAutorisés { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int CarrièreId { get; set; } } [Serializable] [XmlRoot(ElementName = "competences")] public class Competence : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "type")] public string? Type { get; set; } [XmlAttribute(AttributeName = "carac")] public string? Carac { get; set; } [XmlAttribute(AttributeName = "registre")] public string? Registre { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int CompetenceId { get; set; } } [Serializable] [XmlRoot(ElementName = "coordonnées")] public class Coordonnée : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "sous_secteur")] public string? SousSecteur { get; set; } [XmlAttribute(AttributeName = "type")] public string? Type { get; set; } [XmlAttribute(AttributeName = "coord_x")] public int CoordX { get; set; } [XmlAttribute(AttributeName = "coord_y")] public int CoordY { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int CoordonnéeId { get; set; } } [Serializable] [XmlRoot(ElementName = "cybernétiques")] public class Cybernétique : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "type")] public string? Type { get; set; } [XmlAttribute(AttributeName = "effet_qualité_médiocre")] public string? EffetQualitéMédiocre { get; set; } [XmlAttribute(AttributeName = "effet_qualité_moyenne")] public string? EffetQualitéMoyenne { get; set; } [XmlAttribute(AttributeName = "effet_qualité_bonne")] public string? EffetQualitéBonne { get; set; } [XmlAttribute(AttributeName = "effet_qualité_exceptionnelle")] public string? EffetQualitéExceptionnelle { get; set; } [XmlAttribute(AttributeName = "cout")] public int Cout { get; set; } [XmlAttribute(AttributeName = "disponibilité")] public string? Disponibilité { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int CybernétiqueId { get; set; } } [Serializable] [XmlRoot(ElementName = "disciplines")] public class Discipline : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int DisciplineId { get; set; } } [Serializable] [XmlRoot(ElementName = "divination")] public class Divination : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "effet")] public string? Effet { get; set; } [XmlAttribute(AttributeName = "seuil_min")] public int SeuilMin { get; set; } [XmlAttribute(AttributeName = "seuil_max")] public int SeuilMax { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int DivinationId { get; set; } } [Serializable] [XmlRoot(ElementName = "equipements")] public class Equipement : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "type")] public string? Type { get; set; } [XmlAttribute(AttributeName = "poids")] public double Poids { get; set; } [XmlAttribute(AttributeName = "prix")] public int Prix { get; set; } [XmlAttribute(AttributeName = "disponibilité")] public string? Disponibilité { get; set; } [XmlAttribute(AttributeName = "description")] public int Description { get; set; } [XmlIgnoreAttribute] public int EquipementId { get; set; } } [Serializable] [XmlRoot(ElementName = "implants")] public class Implant : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "effet")] public string? Effet { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int ImplantId { get; set; } } [Serializable] [XmlRoot(ElementName = "mondes")] public class Monde : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "type")] public string? Type { get; set; } [XmlAttribute(AttributeName = "effet")] public string? Effet { get; set; } [XmlAttribute(AttributeName = "destin")] public string? Destin { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int MondeId { get; set; } } [Serializable] [XmlRoot(ElementName = "mutation")] public class Mutation : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "type")] public string? Type { get; set; } [XmlAttribute(AttributeName = "effet")] public string? Effet { get; set; } [XmlAttribute(AttributeName = "seuil_min")] public int SeuilMin { get; set; } [XmlAttribute(AttributeName = "seuil_max")] public int SeuilMax { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int MutationId { get; set; } } [Serializable] [XmlRoot(ElementName = "pouvoir")] public class Pouvoir : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "discipline")] public string? Discipline { get; set; } [XmlAttribute(AttributeName = "seuil")] public int Seuil { get; set; } [XmlAttribute(AttributeName = "action")] public string? Action { get; set; } [XmlAttribute(AttributeName = "opposé")] public bool Opposé { get; set; } [XmlAttribute(AttributeName = "portée")] public string? Portée { get; set; } [XmlAttribute(AttributeName = "prolongeable")] public bool Prolongeable { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int PouvoirId { get; set; } } [Serializable] [XmlRoot(ElementName = "promotion")] public class Promote : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "promotion")] public int Promotion { get; set; } [XmlAttribute(AttributeName = "effet")] public string? Effet { get; set; } [XmlAttribute(AttributeName = "condition")] public string? Condition { get; set; } [XmlAttribute(AttributeName = "alternative")] public bool Alternative { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int PromotionId { get; set; } } [Serializable] [XmlRoot(ElementName = "seuil")] public class Seuil : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "rang")] public int Rang { get; set; } [XmlAttribute(AttributeName = "valeur_min")] public int ValeurMin { get; set; } [XmlAttribute(AttributeName = "valeur_max")] public int ValeurMax { get; set; } [XmlIgnoreAttribute] public int SeuilId { get; set; } } [Serializable] [XmlRoot(ElementName = "sousmonde")] public class Sousmonde : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "type_monde")] public string? TypeMonde { get; set; } [XmlAttribute(AttributeName = "seuil_min")] public int SeuilMin { get; set; } [XmlAttribute(AttributeName = "seuil_max")] public int SeuilMax { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int SousmondeId { get; set; } } [Serializable] [XmlRoot(ElementName = "talent")] public class Talent : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "multiple")] public bool Multiple { get; set; } [XmlAttribute(AttributeName = "condition")] public string? Condition { get; set; } [XmlAttribute(AttributeName = "effet")] public string? Effet { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int TalentId { get; set; } } [Serializable] [XmlRoot(ElementName = "trait")] public class Trait : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "effet")] public string? Effet { get; set; } [XmlAttribute(AttributeName = "multiple")] public bool Multiple { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int TraitId { get; set; } } [Serializable] [XmlRoot(ElementName = "trouble")] public class Trouble : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "effet")] public string? Effet { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int TroubleId { get; set; } } [Serializable] [XmlRoot(ElementName = "type_monde")] public class TypeMonde : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "texte_section")] public string? TexteSection { get; set; } [XmlAttribute(AttributeName = "age")] public string? Age { get; set; } [XmlAttribute(AttributeName = "cheveux")] public string? Cheveux { get; set; } [XmlAttribute(AttributeName = "corpulence")] public string? Corpulence { get; set; } [XmlAttribute(AttributeName = "particularités_physiques")] public string? ParticularitésPhysiques { get; set; } [XmlAttribute(AttributeName = "peau")] public string? Peau { get; set; } [XmlAttribute(AttributeName = "yeux")] public string? Yeux { get; set; } [XmlAttribute(AttributeName = "description")] public string? Description { get; set; } [XmlIgnoreAttribute] public int TypeMondeId { get; set; } } [Serializable] [XmlRoot(ElementName = "type_nom")] public class TypeName : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlAttribute(AttributeName = "nom")] public string? Nom { get; set; } [XmlAttribute(AttributeName = "type_nom")] public string? TypeNom { get; set; } [XmlAttribute(AttributeName = "genre")] public string? Genre { get; set; } [XmlAttribute(AttributeName = "seuil_min")] public int SeuilMin { get; set; } [XmlAttribute(AttributeName = "seuil_max")] public int SeuilMax { get; set; } [XmlIgnoreAttribute] public int TypeNomId { get; set; } } [Serializable] [XmlRoot(ElementName = "root")] public class Root : BaseEntity { [XmlAttribute(AttributeName = "id")] public string Id { get; set; } [XmlArray(ElementName = "extensions")] [XmlArrayItem(ElementName = "extension")] public List Extensions { get; set; } [XmlArray(ElementName = "accessoires_armes")] [XmlArrayItem(ElementName = "accessoire")] public List AccessoiresArmes { get; set; } [XmlArray(ElementName = "améliorations")] [XmlArrayItem(ElementName = "amélioration")] public List Améliorations { get; set; } [XmlArray(ElementName = "archétypes")] [XmlArrayItem(ElementName = "archétype")] public List Archétypes { get; set; } [XmlArray(ElementName = "armes")] [XmlArrayItem(ElementName = "arme")] public List Armes { get; set; } [XmlArray(ElementName = "armures")] [XmlArrayItem(ElementName = "armure")] public List Armures { get; set; } [XmlArray(ElementName = "assermentations")] [XmlArrayItem(ElementName = "assermentation")] public List Assermentations { get; set; } [XmlArray(ElementName = "attributs_armes")] [XmlArrayItem(ElementName = "attribut")] public List AttributsArmes { get; set; } [XmlArray(ElementName = "carrières")] [XmlArrayItem(ElementName = "carrière")] public List Carrières { get; set; } [XmlArray(ElementName = "competences")] [XmlArrayItem(ElementName = "competence")] public List Competences { get; set; } [XmlArray(ElementName = "coordonnées")] [XmlArrayItem(ElementName = "coordonnée")] public List Coordonnées { get; set; } [XmlArray(ElementName = "cybernétiques")] [XmlArrayItem(ElementName = "cybernétique")] public List Cybernétiques { get; set; } [XmlArray(ElementName = "disciplines")] [XmlArrayItem(ElementName = "discipline")] public List Disciplines { get; set; } [XmlArray(ElementName = "divinations")] [XmlArrayItem(ElementName = "divination")] public List Divinations { get; set; } [XmlArray(ElementName = "equipements")] [XmlArrayItem(ElementName = "equipement")] public List Equipements { get; set; } [XmlArray(ElementName = "implants")] [XmlArrayItem(ElementName = "implant")] public List Implants { get; set; } [XmlArray(ElementName = "mondes")] [XmlArrayItem(ElementName = "monde")] public List Mondes { get; set; } [XmlArray(ElementName = "mutations")] [XmlArrayItem(ElementName = "mutation")] public List Mutations { get; set; } [XmlArray(ElementName = "pouvoirs")] [XmlArrayItem(ElementName = "pouvoir")] public List Pouvoirs { get; set; } [XmlArray(ElementName = "promotions")] [XmlArrayItem(ElementName = "promotion")] public List Promotions { get; set; } [XmlArray(ElementName = "seuils_xp")] [XmlArrayItem(ElementName = "seuil")] public List SeuilsXp { get; set; } [XmlArray(ElementName = "sousmondes")] [XmlArrayItem(ElementName = "sousmonde")] public List Sousmondes { get; set; } [XmlArray(ElementName = "talents")] [XmlArrayItem(ElementName = "talent")] public List Talents { get; set; } [XmlArray(ElementName = "traits")] [XmlArrayItem(ElementName = "trait")] public List Traits { get; set; } [XmlArray(ElementName = "troubles")] [XmlArrayItem(ElementName = "trouble")] public List Troubles { get; set; } [XmlArray(ElementName = "type_mondes")] [XmlArrayItem(ElementName = "type_monde")] public List TypeMondes { get; set; } [XmlArray(ElementName = "types_nom")] [XmlArrayItem(ElementName = "type_nom")] public List TypesNom { get; set; } } }