Формат объекта DateTime в модели как свойство NotMapped - PullRequest
0 голосов
/ 26 февраля 2019

У меня есть модель под названием Report, имеющая два свойства ниже.Я собираюсь получить данные и отправить их в JQuery Datatable.Мне нужно отформатировать поле даты перед отправкой для просмотра, я сделал это следующим образом:

public class Report
{
    public int Id {get; set;}
    public DateTime ActivityDate { get; set; }

    //Here is the date formation property
    public string FormattedDate => ActivityDate.ToString();
}

Вот метод действия, который вызывается с помощью jQuery datatable:

[JQDataTable]
public ActionResult Search()
{
     IQueryable<Report> data = db.Reports;
     return View("Index",data);
}

Проблема в том, что я не могу получить отформатированную дату, вместо этого я получаю сообщение об ошибке:

The specified type member 'FormattedDate' is not supported in LINQ to Entities. Only initializers, entity members, and entity navigation properties are supported.

Я попытался найти много, но не смог найти решение для этого.На следующем шаге я хочу преобразовать эту дату в PersianCalendar объект и вернуть его строку.

1 Ответ

0 голосов
/ 27 февраля 2019

Я столкнулся с подобными проблемами при использовании ToString внутри запроса Linq.Для вашего случая я думаю, что было бы легче обработать преобразование datetime во время просмотра и оставить переменную datetime как есть.Вместо этого примите конкретный формат для действия поиска, проанализируйте полученную дату и выполните запрос.

После очень долгого страдания я теперь склонен принимать дату и время из представления в виде строки с моим явно указанным форматом ("yyyy-mm-dd "только мой личный выбор: P) и используйте DateTime.TryParseExact (), также обрабатывая нулевой ввод.

Надеюсь, это поможет.Удачного кодирования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...