我正在使用Azure搜索Blob索引器的预览。索引的所有数据都包含在blob的元数据中。因此,我将AzureSearch_SkipContent设置为'true'以防止内容索引。
我无法使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"}}
我尝试了各种字符串格式(我测试的blob上的值是
2015-01-03T11:13:00.000+01:00
因此它应该对应于与OData 4.0兼容的格式,因此对应于此处所述的天蓝色搜索:https://msdn.microsoft.com/en-us/library/azure/dn798938.aspx
答案 0 :(得分:1)
将字符串转换为DateTimeOffset字段值。我们认识到这是一个痛苦的限制,并将在不久的将来解决这个问题。作为部分解决方法,您可以将这些值编入索引(因此您可以根据需要对其进行格式化,并仍然使用它们进行搜索和过滤)。 谢谢你提出这个问题!