You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
CShark/Persistance/DataContractPersistance.cs

89 lines
2.1 KiB

using Modèle;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Persistance
{
public class DataContractPersistance : IPersistanceManager
{
public DataContractSerializer Serializer { get; set; }
= new DataContractSerializer(typeof(List<Requin>));
string FilePath { get; set; } = Path.Combine(Directory.GetCurrentDirectory(), "..//..//Persistance");
string FileName { get; set; }
string Filepers => Path.Combine(FilePath, FileName);
List<Requin> requins = new List<Requin>();
public List<Requin> LoadRequins()
{
if (File.Exists(Filepers))
{
throw new FileNotFoundException("The persisance file Persisitance does not exist");
}
using (Stream stream = File.OpenRead(Filepers))
{
requins = Serializer.ReadObject(stream) as List<Requin>;
}
return requins;
}
public void SaveRequins(List<Requin> reqs)
{
if (!Directory.Exists(FilePath))
{
Directory.CreateDirectory(FilePath);
}
using (Stream stream = File.Create(Filepers))
{
Serializer.WriteObject(stream, requins);
}
}
public List<Requin> LoadRequinsAdd()
{
throw new NotImplementedException();
}
public List<Requin> LoadRequinsEdit()
{
throw new NotImplementedException();
}
public List<Personne> LoadUsers()
{
throw new NotImplementedException();
}
public void SaveRequinsAdd(List<Requin> reqs)
{
throw new NotImplementedException();
}
public void SaveRequinsEdit(List<Requin> reqs)
{
throw new NotImplementedException();
}
public void SaveUsers(List<Personne> pers)
{
throw new NotImplementedException();
}
}
}