我需要从使用ODATA的Web API服务器(C#)中查询旧数据库中的表。我有一个传统数据库的基本ODBC驱动程序,我只需要在这个时候支持基本的过滤(eq,startswith和substringof)。例如:
queryOptions.Filter.RawValue:
应该被转换为这样的事情(我只关心这里的WHERE子句):
SELECT CustName, Address1, Address2, ...
FROM Customers
WHERE CustName like 'Bill%' AND
Address1 like '%sunset% AND
Phone like '%7421%'
我意识到解析RawValue可能不是一个好主意。
有没有人有类似的东西可以用来作为起点?或建议一个好的,可靠的方式来实现这一目标?
见我的回答在这个线程。 http://stackoverflow.com/a/36956462/3271357 – PvPlatten
我也发布了一个替代在http://stackoverflow.com/questions/28372999/translate-odata-queries-to-sql/42547175#42547175 –