【发布时间】:2012-08-14 04:48:11
【问题描述】:
我想知道是否可以为int 字段使用substringof(或类似的?)过滤器来过滤oData?因为我想根据他们的EnquiryID 查询我所有的Enquiries,但我希望它是一个包含而不是完全匹配。这可以进行强制转换/转换吗?
这是我目前的查询:
/api/Enquiries?filter=substringof('123', EnquiryID)
但我收到以下错误:
Method 'Boolean Contains(System.String)' declared on type 'System.String'
cannot be called with instance of type 'System.Int32'
我希望它返回所有在其EnquiryID 中包含123 的查询。使用DateTime 类型时,我也得到了同样的结果..
编辑
这是我的Enquiries 控制器中的Get 方法:
[Queryable]
public IQueryable<EnquiryDTO> Get()
{
var query = from enquiry in context.Enquiries
select new EnquiryDTO
{
CustomerID = enquiry.CustomerID,
OrderDate = (DateTime)enquiry.EnquiryDate,
OrderID = enquiry.EnquiryID,
Owner = enquiry.Owner
};
return query.AsQueryable();
}
【问题讨论】:
标签: asp.net-web-api odata