0

I don't understand why linq2db is not generating the correct SQL string for this query against Oracle, and it is working perfectly against SQLServer.

string idUser="U1";
await context.Users.ToLinqToDbTable().Where(u=>u.IdUser == idUser).FirstOrDefaultAsyncLinqToDB();

Always returns null. However, it works if el value used directly:

await context.Users.ToLinqToDbTable().Where(u=>u.IdUser == "U1").FirstOrDefaultAsyncLinqToDB();

Looking at the logs, el SQL statement generated is like this:

--  Oracle Oracle11
DECLARE @idUser Varchar2(8) -- String
SET     @idUser = 'U1'

SELECT
u.IdUser,
etc..
FROM
    USERS u
WHERE
    u.IDUSER = :idUser

Why is it generating T-SQL code and not Oracle code (the context is initialized with .UseOracle())? Thanks

Gert Arnold
  • 105,341
  • 31
  • 202
  • 291
dave
  • 2,291
  • 3
  • 19
  • 25

0 Answers0