Tôi đang cố truy vấn OData bằng cách sử dụng máy khách .net để lấy các thành phần được xuất bản lần cuối trong một DateTime cụ thể. Nó luôn luôn là không có một ngoại lệ 'datetime' is not property of entity: 'com.tridion.storage.ComponentMeta'
Tridion OData Query với bộ lọc ngày giờ - lỗi: datetime không phải là thuộc tính của Entity
var lastPubComponents = _client.Components
.Where(p => p.PublicationId == sitePubId && p.LastPublishDate > Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-ddThh:mm:ss")))
.ToList();
Khi tôi kiểm tra URL OData xây dựng nó trông giống như sau và tôi đã cố gắng với cùng một URL từ trình duyệt chỉ để kiểm tra tôi đã nhận lỗi cùng dự kiến sẽ tăng gấp đôi.
URL OData khi tôi thử với LINQ
/cd_webservice/odata.svc/Components?$filter=PublicationId eq 59 and LastPublishDate ge datetime'2012-10-11T09:22:14'
tôi đã cố gắng bằng cách loại bỏ các datetime
chuỗi từ URL ở trên và kiểm tra từ trình duyệt một lần nữa. URL này hoạt động như mong đợi và tôi nhận được kết quả chính xác.
Dưới đây là URL (làm việc w/out datetime)
/cd_webservice/odata.svc/Components?$filter=PublicationId eq 59 and LastPublishDate ge '2012-10-11T09:22:14'
Đó là loại dẫn tôi nghĩ nó là một cái gì đó sai với LINQ và/hoặc kết hợp khách hàng .net.
Tôi đã thử phát các kết hợp định dạng Ngày giờ khác nhau và tôi gặp lỗi tương tự. Khi tôi kiểm tra tiêu chuẩn Odata, nó gợi ý sử dụng chuỗi datetime
nhưng đó là chuỗi tôi đang gặp phải sự cố.
Bất kỳ ai biết cách gỡ lỗi/giải quyết vấn đề này khỏi mã LINQ? Chúng tôi rất trân trọng bất kỳ sự giúp đỡ nào.
Tôi đã mở một vé hỗ trợ cho tương tự. Sẽ đăng nó sau khi tôi có một bản cập nhật. –
Tôi đang xem http://www.odata.org/documentation/uri-conventions#FilterSystemQueryOption nhưng tôi vẫn không tìm thấy tiêu chuẩn OData đề xuất sử dụng 'DateTime' ... –