У меня есть поле date
в таблице SQL, и если я пытаюсь сохранить, либо 09-02-2019, либо 09 февраля 2019 года, он сохраняет его мне, но попытка восстановить эту дату показывает что-то вроде этого(все вместе или с T):
2019-02-09 00:00:00:000
Я пытаюсь восстановить эти значения с помощью EF и LINQ, чтобы иметь возможность форматировать дату, я пытаюсь реализовать это:
СВОЙСТВА ДАТЫ В МОИХ ЗАКАЗАХ КЛАССА
[Column(TypeName = "date")]
public DateTime? fechaInicio { get; set; }
[Column(TypeName = "date")]
public DateTime? fechaExpo { get; set; }
[Column(TypeName = "date")]
public DateTime? fechaEntrega { get; set; }
ПОЛУЧИТЬ СПИСОК ДАННЫХ
//TRAER LISTA DE ORDENES
public List<mapOrdenesListaTemp> listadoOrdenes()
{
var lista = new List<mapOrdenesListaTemp>();
using(var ctx=new ModelContext())
{
lista = ctx.Ordenes.Select(m => new mapOrdenesListaTemp
{
fechaInicio=Convert.ToDateTime(m.fechaInicio).ToString("dd-mmmm-yyyy",CultureInfo.InvariantCulture),
fechaExportacion= Convert.ToDateTime(m.fechaExpo).ToString("dd-mmmm-yyyy", CultureInfo.InvariantCulture),
fechaEntrega= Convert.ToDateTime(m.fechaEntrega).ToString("dd-mmmm-yyyy", CultureInfo.InvariantCulture)
}).ToList();
}
Я пытаюсь присвоить данные здесь (CLASS mapOrdenesListaTemp)
public class mapOrdenesListaTemp
{
public string fechaInicio { get; set; }
public string fechaEntrega { get; set; }
public string fechaExportacion { get; set; }
}
Но я получаю эту ошибку:
System.NotSupportedException: «LINQ to Entities не распознает метод» System.String ToString (System.String, System.IFormatProvider) ', и этот метод не может быть преобразован в выражение хранилища.'
Я знаю, что не могу использовать .ToString ()
, как говорит ошибка, но как мне это сделать?восстановить данные и затем применить преобразование (я хотел бы передать дату от 2019-02-09
до 09-February-2019
?обойти эту ошибку, я не знаю, если мой код правильный?)