Я работаю над приложением, в котором можно управлять данными пациентов, включая дату их рождения.Я могу очень просто вставить эти данные в SQL, используя dapper, но вытащить дату рождения - это отдельная задача.
У меня есть запрос SQL, который возвращает список соответствующих пациентов на основе поиска и в c # Iбросьте их в класс пациента, который я определил в заявке.Однако, когда я делаю это, я не могу указать, как строка, содержащая дату рождения, будет приведена к дате.
Это означает, что вместо того, чтобы использовать мой пользовательский формат для приведения, она использует все, что угодно.формат по умолчанию это сделано, чтобы сделать.Это приводит к тому, что дата просто возвращается 1/1/0001 в 12:00.Вот мой код для извлечения из базы данных:
public List<PatientModel> SearchPatientsByName(string name)
{
List<PatientModel> output;
using (IDbConnection connection = new System.Data.SqlClient.SqlConnection(GlobalConfig.CnnString(db)))
{
var p = new DynamicParameters();
p.Add("@Name", name);
output = connection.Query<PatientModel>("spPatients_SearchByName", p, commandType: CommandType.StoredProcedure).AsList();
}
return output;
}
Вот мой код для вставки в Sql:
public PatientModel CreatePatientModel(PatientModel model)
{
using (IDbConnection connection = new System.Data.SqlClient.SqlConnection(GlobalConfig.CnnString(db)))
{
model.Address = AesCryp.Encrypt(model.Address);
model.CIN = AesCryp.Encrypt(model.CIN);
var p = new DynamicParameters();
p.Add("@Name", model.Name);
p.Add("@DOB", model.DateOfBirth);
p.Add("@Address", model.Address);
p.Add("@id", 0, dbType: DbType.Int32, direction: ParameterDirection.Output);
p.Add("@LastName", model.LastName);
p.Add("@Gender", model.Gender);
p.Add("@City", model.City);
p.Add("@PostalCode", model.PostalCode);
p.Add("@Agency", model.AgencyId);
p.Add("@CIN", model.CIN);
p.Add("@CardCode", 0);
p.Add("@MobileNumber", model.MobileNumber);
p.Add("@HomeNumber", model.HomeNumber);
p.Add("@InsuranceCompany", model.InsuranceCoId);
connection.Execute("spPatient_Insert", p, commandType: CommandType.StoredProcedure);
model.Id = p.Get<int>("@id");
return model;
}
}