Here are some (pseudo) code to reproduce:
Code: Select all
var array = new string[] { "23", "71" };
var query = this.DataContext.MyState.Where(x => array.Contains(x.Value.Substring(0, 2)));
var q = query.ToQueryString();
Code: Select all
SELECT "f".ID, "f".VALUE
FROM MYSTATE "f"
WHERE SUBSTR("f".VALUE, 0 + 1, 2) IN ('23', '71')
Code: Select all
SELECT "f".ID, "f".VALUE
FROM MYSTATE "f"
WHERE SUBSTR("f".VALUE, (0 + 1) + 1, 2) IN ('23', '71')
Code: Select all
SELECT "f".ID, "f".VALUE
FROM MYSTATE "f"
WHERE SUBSTR("f".VALUE, (((0 + 1) + 1) + 1) + 1, 2) IN ('23', '71')
Looks like an static variable which get increased every call.
Version was Devart.Data.Oracle.EFCore Version=9.16.1434, also the Version 10 has the same bug.