Как да изпълните филтър, чувствителен към главни и малки букви на Azure Table storage 2.0?
Ако направя тази заявкаTableQuery.GenerateFilterCondition("ShortUrl", QueryComparisons.Equal, "Abc");
Ще върне 2 записа с shortUrl "Abc" и "ABC"
Генерираната заявка се показва така
/devstoreaccount1/Articles?$filter=shortUrl%20eq%20%27Abc%27&timeout=90
Има решение за версия 1.7, показано тук , но това не е приложимо за версия 2.0. Проверих документацията на DataService и не се споменава там.
Тъй като заявките за съхранение на таблици са базирани на протокол OData, защо се държи различно при сравняване на низови стойности. Сигурен съм, че операторът "eq" на Odata трябва да е чувствителен към главни и малки букви.
Проверете OData Api Explorer с тази заявка
http://services.odata.org/V3/OData/OData.svc/Products?$filter= Name eq 'Bread'
След това го сменете с хляб.