aad DataContractPersistence

pull/23/head
Antoine PEREDERII 2 years ago
parent 7d3c319152
commit 506afb3367

@ -1,22 +1,23 @@
using Banquale.Model;
using Banquale.Stub;
using Banquale.DataContractPersistance;
namespace Banquale;
public partial class App : Application
{
public Manager MyManager { get; private set; } = new Manager(new Stub.Stub()/*DataContractPersistance.DataContractPers()*/);
public Manager MyManager { get; private set; } = new Manager(new Stub.Stub());
public App()
{
MyManager.ChargeDonnee();
//MyManager.Persistance = new DataContractPersistance.DataContractPers();
//MyManager.SauvegardeDonnee();
MyManager.ChargeDonnee();
MyManager.Persistance = new DataContractPersistance.DataContractPers();
MyManager.SauvegardeDonnee();
InitializeComponent();
InitializeComponent();
MainPage = new AppShell();

@ -1,22 +1,48 @@
using System;
using System.Diagnostics;
using System.Runtime.Serialization;
using Banquale.Model;
namespace Banquale.DataContractPersistance
{
public class DataContractPers
public class DataContractPers : IPersistanceManager
{
//public DataContractPers()
//{
// public string Filename { get; set; } = "PATH";
// public string FilePath { get; set; } = "PATH";
public string FileName { get; set; } = "ClientAndTransactionsList.xml";
public string FilePath { get; set; } = Path.Combine(Directory.GetCurrentDirectory(), "..//XML1_folder")/*"/Users/Perederii/SAE/Banquale/src/Banquale/Banquale/XML_folder"*/;
public (List<Client>, List<Transactions>) ChargeDonnee()
{
var serializer = new DataContractSerializer(typeof(List<Client>));
List<Client> ListClients;
using (Stream s = File.OpenRead(Path.Combine(FilePath, FileName)))
{
ListClients = serializer.ReadObject(s) as List<Client>;
}
return (ListClients, new List<Transactions>());
}
public void SauvegardeDonnee(List<Client> c, List<Transactions> t)
{
var serializer = new DataContractSerializer(typeof(List<Client>));
//}
if(!Directory.Exists(FilePath))
{
Debug.WriteLine("Directory crée à l'instant");
Debug.WriteLine(Directory.GetDirectoryRoot);
Debug.WriteLine(FilePath);
Directory.CreateDirectory(FilePath);
}
//public (List<Client>, List<Transactions>) ChargeDonnee()
//{
// var serializer = new DataContractSerializer(typeof(Client));
//}
}
using (Stream s = File.Create(Path.Combine(FilePath, FileName)))
{
serializer.WriteObject(s, t);
}
}
}
}

@ -7,10 +7,10 @@ using System.Threading.Tasks;
namespace Banquale.Model
{
//[DataFrameworks]
public class Client: Personne
{
//[DataMember]
public List<Compte> ListeComptes { get; private set; }

@ -8,7 +8,7 @@ namespace Banquale.Model
{
public interface IPersistanceManager
{
(List<Client>, List<Transactions>) ChargeDonnee();
public (List<Client>, List<Transactions>) ChargeDonnee();
void SauvegardeDonnee(List<Client> c, List<Transactions> t);
}

@ -35,7 +35,7 @@ namespace Banquale.Model
return ListeClients[place];
}
public void sauvegardeDonnee()
public void SauvegardeDonnee()
{
Persistance.SauvegardeDonnee(ListeClients, ListeTransactions);
}

Loading…
Cancel
Save