public List<Analysis> GetAnalyzes(string policyNumber)
{
OpenConnection();
_command.CommandText = "SELECT TemplateTitle, Data, Date FROM Analyzes WHERE PolicyNumber = @PolicyNumber";
_command.Parameters.Add(GetParam("@PolicyNumber", policyNumber));
var analyzes = new List<Analysis>();
var binFormatter = new ListBinaryFormatter<string>();
try
{
using (DbDataReader dataReader = _command.ExecuteReader())
{
while (dataReader.Read())
{
var data = (byte[]) dataReader["Data"];
var title = (string) dataReader["TemplateTitle"];
var date = (DateTime) dataReader["Date"];
analyzes.Add(new Analysis(binFormatter.Deserialize(data), title, date));
}
}
//LOGGING
Logger.Info("Analyzes were obtained");
}
catch (Exception ex)
{
//LOGGING
Logger.Error("Can't get analyzes!", ex);
throw new InvalidOperationException("Can't get analyzes!");
}
finally
{
CloseConnection();
}
return analyzes;
}