Я пытаюсь привести класс к интерфейсу. И я получаю это исключение.
Я пытался смотреть на все используемые элементы, но все вроде бы нормально.
! [Код исключения] https://i.imgur.com/twY6Bl2.png
И мой код для интерфейса IStocarePacienti:
namespace DataAccess
{
public interface IStocarePacienti : IStocareFactory
{
List<Pacient> GetPacienti();
Pacient GetPacient(int id);
bool AddPacient(Pacient d);
bool UpdatePacient(Pacient d);
}
}
А для моего класса:
namespace DataAccess
{
public class AdministrarePacienti : IStocareFactory
{
private const int PRIMUL_TABEL = 0;
private const int PRIMA_LINIE = 0;
public List<Pacient> GetPacienti()
{
var result = new List<Pacient>();
var dsCompanii = SqlDBHelper.ExecuteDataSet("select * from pacienti_ac", CommandType.Text);
foreach (DataRow linieDB in dsCompanii.Tables[PRIMUL_TABEL].Rows)
{
result.Add(new Pacient(linieDB));
}
return result;
}
public Pacient GetPacient(int id)
{
Pacient result = null;
var dsCompanii = SqlDBHelper.ExecuteDataSet("select * from pacienti_ac where ID_PACIENT = :ID_PACIENT", CommandType.Text,
new OracleParameter(":ID_PACIENT", OracleDbType.Int32, id, ParameterDirection.Input));
if (dsCompanii.Tables[PRIMUL_TABEL].Rows.Count > 0)
{
DataRow linieDB = dsCompanii.Tables[PRIMUL_TABEL].Rows[PRIMA_LINIE];
result = new Pacient(linieDB);
}
return result;
}
public bool AddPacient(Pacient comp)
{
return SqlDBHelper.ExecuteNonQuery(
"INSERT INTO pacienti_ac VALUES (seq_pacienti_ac.nextval, :NUME, :PRENUME, :TELEFON, :GR_SANGUINA, :CNP, :DATA_NASTERII)", CommandType.Text,
new OracleParameter(":NUME", OracleDbType.NVarchar2, comp.Nume, ParameterDirection.Input),
new OracleParameter(":PRENUME", OracleDbType.NVarchar2, comp.Prenume, ParameterDirection.Input),
new OracleParameter(":TELEFON", OracleDbType.NVarchar2, comp.Telefon, ParameterDirection.Input),
new OracleParameter(":GR_SANGUINA", OracleDbType.NVarchar2, comp.GrSanguina, ParameterDirection.Input),
new OracleParameter(":CNP", OracleDbType.NVarchar2, comp.CNP, ParameterDirection.Input),
new OracleParameter(":DATA_NASTERII", OracleDbType.Date, comp.DataNasterii, ParameterDirection.Input));
}
public bool UpdatePacient(Pacient comp)
{
return SqlDBHelper.ExecuteNonQuery(
"UPDATE pacienti_ac set NUME = :NUME, PRENUME = :PRENUME, TELEFON = :TELEFON, GR_SANGUINA = :GR_SANGUINA, CNP = :CNP, DATA_NASTERII = :DATA_NASTERII where ID_PACIENT = :ID_PACIENT", CommandType.Text,
new OracleParameter(":NUME", OracleDbType.NVarchar2, comp.Nume, ParameterDirection.Input),
new OracleParameter(":PRENUME", OracleDbType.NVarchar2, comp.Prenume, ParameterDirection.Input),
new OracleParameter(":TELEFON", OracleDbType.NVarchar2, comp.Telefon, ParameterDirection.Input),
new OracleParameter(":GR_SANGUINA", OracleDbType.NVarchar2, comp.GrSanguina, ParameterDirection.Input),
new OracleParameter(":CNP", OracleDbType.NVarchar2, comp.CNP, ParameterDirection.Input),
new OracleParameter(":ID_PACIENT", OracleDbType.Int32, comp.IdPacient, ParameterDirection.Input));
}
}
}
Я не знаю, что я могу сделать. Как я уже сказал, все выглядит хорошо для меня.