Можете ли вы попробовать, как показано ниже:
return DbContext.Products.Include(x=>x.Benefits).FirstOrDefault(p => p.Route == route);
И в классе запуска:
public void ConfigureServices(IServiceCollection services)
{
...
services.AddMvc()
.AddJsonOptions(
options => options.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore
);
...
}
Как насчет просто:
Date expiry = new Date(Long.parseLong(date));
РЕДАКТИРОВАНИЕ: согласно ответ rde6173 и более тщательно изучающий вход, указанный в вопросе, "1081157732", кажется, основанное на секундах значение эпохи, таким образом, Вы хотели бы умножить длинное от parseLong () на 1 000 для преобразования в миллисекунды, который является тем, что Конструктор Date Java использует, таким образом:
Date expiry = new Date(Long.parseLong(date) * 1000);
Эпоха является количеством секунды начиная с Jan 1, 1970..
Так:
String epochString = "1081157732";
long epoch = Long.parseLong( epochString );
Date expiry = new Date( epoch * 1000 );
Для получения дополнительной информации: http://www.epochconverter.com/
Еще лучше используйте JodaTime. Намного легче проанализировать строки и в строки. Ориентировано на многопотоковое исполнение также. Стоящий времени это возьмет Вас для реализации его.
long timestamp = Long.parseLong(date)
Date expiry = new Date(timestamp * 1000)
Гул...., если я не ошибаюсь, время Эпохи UNIX, является на самом деле тем же самым, поскольку
System.currentTimeMillis()
Настолько пишущий
try {
Date expiry = new Date(Long.parseLong(date));
}
catch(NumberFormatException e) {
// ...
}
должен работать (и быть намного быстрее что парсинг даты)