Я не могу запросить какой-либо объект по свойствам DateTime.WCF WebApi IQueryable не работает с свойствами DateTime
public class MyModel
{
public int Id { get; set; }
public DateTime TimeStamp { get; set; }
}
[ServiceContract]
public class BuildJobApi
{
[WebGet]
public IQueryable<MyModel> GetMyModels()
{
return _service.GetMyModels(); // IQueryable<MyModel>
}
}
Я пробовал использовать WCF WebApi v0.5.0 и 0.6.0, оба бросают сообщения об ошибках.
Вот URL генерируется (с помощью WebAPI) запрос по Id (работ):
/api/models?$filter=(Id eq 100)
Вот URL генерируется запрос по TimeStamp (не работает):
/api/models?$filter=TimeStamp ge DateTime'2012-02-22T00:00:00'
I может также запрашивать по дате (работы):
/api/models?$filter=(year(ExceptionDateTime) eq 2012)
Точное сообщение об ошибке 500/Internal Server Error. С сообщением:
The server encountered an error processing the request. See server logs for more details.
Q: Есть ли что-нибудь, что можно сделать, чтобы запросить свойства DateTime без запроса каждой части по отдельности?
Является ли 'MyModel' помеченным как DataContract, и правильно ли это свойство DateTime является TimeStamp? –
Он не помечен как DataContract. TimeStamp - это имя свойства (для целей этой демонстрации), DateTime - это тип. – joelnet
Это должен быть DataContract. Что касается TimeStamp - конечно :). –