#region Ressources extérieures
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.Data.SqlTypes;
using ProjetTheAlone.Classes;
#endregion
namespace ProjetTheAlone.Acces
{
///
/// Couche d'accès aux données (Data Access Layer)
///
public class A_T_beneficiaire : ADBase
{
#region Constructeurs
public A_T_beneficiaire(string sChaineConnexion)
: base(sChaineConnexion)
{ }
#endregion
public int Ajouter(string B_nom, string B_prenom, DateTime? B_anniversaire, byte?[] B_img)
{
CreerCommande("AjouterT_beneficiaire");
int res = 0;
Commande.Parameters.Add("ID_beneficiaire", SqlDbType.Int);
Direction("ID_beneficiaire", ParameterDirection.Output);
if (B_nom == null) Commande.Parameters.AddWithValue("@B_nom", Convert.DBNull);
else Commande.Parameters.AddWithValue("@B_nom", B_nom);
if (B_prenom == null) Commande.Parameters.AddWithValue("@B_prenom", Convert.DBNull);
else Commande.Parameters.AddWithValue("@B_prenom", B_prenom);
if (B_anniversaire == null) Commande.Parameters.AddWithValue("@B_anniversaire", Convert.DBNull);
else Commande.Parameters.AddWithValue("@B_anniversaire", B_anniversaire);
if (B_img == null) Commande.Parameters.AddWithValue("@B_img", SqlDbType.Image).Value = Convert.DBNull;
else Commande.Parameters.AddWithValue("@B_img", SqlDbType.Image).Value = Outil.toByteArray.Convert(B_img);
Commande.Connection.Open();
Commande.ExecuteNonQuery();
res = int.Parse(LireParametre("ID_beneficiaire"));
Commande.Connection.Close();
return res;
}
public int Modifier(int ID_beneficiaire, string B_nom, string B_prenom, DateTime? B_anniversaire, byte?[] B_img)
{
CreerCommande("ModifierT_beneficiaire");
int res = 0;
Commande.Parameters.AddWithValue("@ID_beneficiaire", ID_beneficiaire);
if (B_nom == null) Commande.Parameters.AddWithValue("@B_nom", Convert.DBNull);
else Commande.Parameters.AddWithValue("@B_nom", B_nom);
if (B_prenom == null) Commande.Parameters.AddWithValue("@B_prenom", Convert.DBNull);
else Commande.Parameters.AddWithValue("@B_prenom", B_prenom);
if (B_anniversaire == null) Commande.Parameters.AddWithValue("@B_anniversaire", Convert.DBNull);
else Commande.Parameters.AddWithValue("@B_anniversaire", B_anniversaire);
if (B_img == null) Commande.Parameters.AddWithValue("@B_img", Convert.DBNull);
else Commande.Parameters.AddWithValue("@B_img", B_img);
Commande.Connection.Open();
Commande.ExecuteNonQuery();
Commande.Connection.Close();
return res;
}
public List Lire(string Index)
{
CreerCommande("SelectionnerT_beneficiaire");
Commande.Parameters.AddWithValue("@Index", Index);
Commande.Connection.Open();
SqlDataReader dr = Commande.ExecuteReader();
List res = new List();
while (dr.Read())
{
C_T_beneficiaire tmp = new C_T_beneficiaire();
tmp.ID_beneficiaire = int.Parse(dr["ID_beneficiaire"].ToString());
tmp.B_nom = dr["B_nom"].ToString();
tmp.B_prenom = dr["B_prenom"].ToString();
if (dr["B_anniversaire"] != DBNull.Value) tmp.B_anniversaire = DateTime.Parse(dr["B_anniversaire"].ToString());
if (dr["B_img"] != DBNull.Value) tmp.B_img = Outil.toNullableByteArray.Convert((byte[])dr["B_img"]);
res.Add(tmp);
}
dr.Close();
Commande.Connection.Close();
return res;
}
public C_T_beneficiaire Lire_ID(int ID_beneficiaire)
{
CreerCommande("SelectionnerT_beneficiaire_ID");
Commande.Parameters.AddWithValue("@ID_beneficiaire", ID_beneficiaire);
Commande.Connection.Open();
SqlDataReader dr = Commande.ExecuteReader();
C_T_beneficiaire res = new C_T_beneficiaire();
while (dr.Read())
{
res.ID_beneficiaire = int.Parse(dr["ID_beneficiaire"].ToString());
res.B_nom = dr["B_nom"].ToString();
res.B_prenom = dr["B_prenom"].ToString();
if (dr["B_anniversaire"] != DBNull.Value) res.B_anniversaire = DateTime.Parse(dr["B_anniversaire"].ToString());
if (dr["B_img"] != DBNull.Value) res.B_img = Outil.toNullableByteArray.Convert((byte[])dr["B_img"]);
res.B_img = (byte?[])dr["B_img"];
}
dr.Close();
Commande.Connection.Close();
return res;
}
public int Supprimer(int ID_beneficiaire)
{
CreerCommande("SupprimerT_beneficiaire");
int res = 0;
Commande.Parameters.AddWithValue("@ID_beneficiaire", ID_beneficiaire);
Commande.Connection.Open();
res = Commande.ExecuteNonQuery();
Commande.Connection.Close();
return res;
}
}
}