База данных в памяти не распознает диапазоны символов при использовании EF.Functions.Like - PullRequest
0 голосов
/ 11 сентября 2018

У меня есть выражение Entity Framework, которое работает, как и ожидалось, при выполнении реального кода, но не работает при выполнении тестов.

Запрос пытается найти все строки, в которых определенное поле заканчивается буквой.

 var bars = await context.Bars.Where(b => EF.Functions.Like(b.Foo, "%[a-z]")).ToListAsync();

В своих тестах я использую базу данных в памяти, вызывая UseInMemoryDatabase. Все тестовые случаи работают как положено, за исключением тех, которые используют подобное выражение, которое содержит диапазон символов (например, [a-z]).

В моем примере база данных в памяти не будет соответствовать "123a", но будет соответствовать "123 [a-z]". Похоже, что база данных в памяти не понимает диапазоны символов в предложении Like.

Есть ли способ заставить базу данных в памяти понимать диапазоны символов при использовании EF.Functions.Like?

...