Я использую Preview of Azure Search Blob Indexer. Все проиндексированные данные содержатся в метаданных блоб. Поэтому я поставил AzureSearch_SkipContent на «true», чтобы предотвратить индексацию содержимого.Azure Blob Indexer: DateTimeOffsets в метаданных
У меня возникли проблемы с получением полей DateTimeOffset, так как я не могу определить правильный формат для хранения значения DateTimeOffset как.
Когда я создаю индексатор, я получаю ответ ошибки (400 Bad Request) с телом ответа проведения следующего содержания:
{"error":{"code":"","message":"Column 'ProcessDT' is of type String that is not compatible with the field of type Edm.DateTimeOffset in the index"}}
Я пробовал различные строковые форматы (значение на сгустке я проверил является
2015-01-03T11:13:00.000+01:00
поэтому он должен соответствовать формату, который совместим с OData 4,0 и поэтому лазурного поиска, как указано здесь: https://msdn.microsoft.com/en-us/library/azure/dn798938.aspx
Это работает как обходной путь, если все DateTimeOffsets находятся в одном и том же часовом поясе, поскольку сравнение строк будет иметь те же результаты (лексикография сравнивается так же, как и сравнение даты и времени). Вероятно, сейчас я буду добавлять документы в индекс поиска вручную, но я хочу быть уверен, что индексор blob сможет сделать это в какой-то момент :), спасибо! –
Согласовано, это не очень обходное решение - мы попытаемся устранить это ограничение в течение нескольких недель. –