diff --git a/Sources/CoreLibrary/Core/Code.cs b/Sources/CoreLibrary/Core/Code.cs
index 3567998..4cf8e91 100644
--- a/Sources/CoreLibrary/Core/Code.cs
+++ b/Sources/CoreLibrary/Core/Code.cs
@@ -1,11 +1,13 @@
using CoreLibrary.Exceptions;
using System.Collections.ObjectModel;
+using System.Runtime.Serialization;
namespace CoreLibrary.Core
{
///
/// Classe représentant un code composé de jetons et ses différentes méthodes.
///
+ [DataContract]
public class Code
{
private readonly ObservableCollection lesJetons = new ObservableCollection();
@@ -13,13 +15,16 @@ namespace CoreLibrary.Core
///
/// Le nombre maximum de jetons dans le code.
///
+ [DataMember]
public int NbJetonsMax { get; private set; }
///
/// Le nombre de jetons dans le code.
///
+ [DataMember]
public int NbJetons { get => lesJetons.Count; }
+ [DataMember]
public ObservableCollection Jetons => lesJetons;
///
diff --git a/Sources/CoreLibrary/Core/Indicateur.cs b/Sources/CoreLibrary/Core/Indicateur.cs
index 89180d8..c4284d5 100644
--- a/Sources/CoreLibrary/Core/Indicateur.cs
+++ b/Sources/CoreLibrary/Core/Indicateur.cs
@@ -1,8 +1,11 @@
-namespace CoreLibrary.Core
+using System.Runtime.Serialization;
+
+namespace CoreLibrary.Core
{
///
/// Enumération des indicateurs disponibles pour les jetons.
///
+ [DataContract]
public enum Indicateur
{
BONNEPLACE,
diff --git a/Sources/CoreLibrary/Core/Jeton.cs b/Sources/CoreLibrary/Core/Jeton.cs
index 1996ce5..4451cdc 100644
--- a/Sources/CoreLibrary/Core/Jeton.cs
+++ b/Sources/CoreLibrary/Core/Jeton.cs
@@ -1,13 +1,17 @@
-namespace CoreLibrary.Core
+using System.Runtime.Serialization;
+
+namespace CoreLibrary.Core
{
///
/// Structure représentant un jeton de couleur
///
+ [DataContract]
public struct Jeton
{
///
/// La couleur du jeton.
///
+ [DataMember]
public readonly Couleur Couleur { get; private init; }
///
diff --git a/Sources/CoreLibrary/Core/Plateau.cs b/Sources/CoreLibrary/Core/Plateau.cs
index c3d1f3e..6d560b5 100644
--- a/Sources/CoreLibrary/Core/Plateau.cs
+++ b/Sources/CoreLibrary/Core/Plateau.cs
@@ -1,4 +1,5 @@
using CoreLibrary.Exceptions;
+using System.Runtime.Serialization;
using System.Security.Cryptography;
namespace CoreLibrary.Core
@@ -6,22 +7,29 @@ namespace CoreLibrary.Core
///
/// Classe représentant un plateau de jeu composé de codes et leurs indicateurs ainsi que les méthodes associées.
///
+ [DataContract]
public class Plateau
{
+ [DataMember]
private readonly Code codeSecret;
+ [DataMember]
private readonly Code?[] grille;
+ [DataMember]
private readonly IEnumerable[] indicateurs;
+ [DataMember]
private readonly int tailleCode;
///
/// Le numéro de tour actuel.
///
+ [DataMember]
public int Tour { get; private set; } = 1;
///
/// La victoire du joueur, True si le joueur a gagné sinon False
///
+ [DataMember]
public bool Victoire { get; private set; } = false;
///
diff --git a/Sources/CoreLibrary/Partie.cs b/Sources/CoreLibrary/Partie.cs
index aaab371..a692fe3 100644
--- a/Sources/CoreLibrary/Partie.cs
+++ b/Sources/CoreLibrary/Partie.cs
@@ -15,12 +15,15 @@ namespace CoreLibrary
[DataMember]
public IRegles Regles { get; private set; }
+ [DataMember]
private readonly List joueurs = new List();
+ [DataMember]
private readonly List plateaux = new List();
+ [DataMember]
private int? courant;
///
- /// Événement déclenché lorsqu'il est nécessaire de d'ajouter un joueur.
+ /// Événement déclenché lorsqu'il est nécessaire d'ajouter un joueur.
///
public event EventHandler? DemanderNom;