У меня есть модель под названием Report, имеющая два следующих свойства. Я собираюсь получить данные и отправить их в таблицу данных jQuery. Мне нужно отформатировать поле даты перед отправкой для просмотра, я сделал это, как показано ниже:
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:
[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 и вернуть его строку.

Я столкнулся с аналогичными проблемами, используя ToString внутри запроса Linq. В вашем случае, я думаю, было бы проще справиться с преобразованием даты и времени во время просмотра и оставить переменную даты и времени как есть. Скорее примите определенный формат для действия поиска, проанализируйте полученную дату и выполните запрос.
После очень долгого мучения я теперь склонен принимать дату и время из представления в виде строки с моим явно указанным форматом («гггг-мм-дд» просто мой личный выбор: P) и использовать DateTime.TryParseExact(), обрабатывая нулевой ввод как Что ж.
Надеюсь, поможет. Удачного кодирования.
обычно считается хорошей практикой использовать модели представления для представления только тех данных, которые нужны вашему представлению. это решит вашу проблему, поскольку вы будете запрашивать необработанные отчеты, а затем ваша модель просмотра отчетов будет иметь
FormattedDate. во время преобразования из необработанной модели в модель представления связь с сущностями больше не будет фактором.