我已经通过Azure Search SDK创建了一个数据源。
Azure sql中的数据源,它是一个视图。
我要设置DataChangeDetectionPolicy和DataDeletionDetectionPolicy, 但我无法理解如何设置这两个属性。
当我认为这两个属性在预览sdk上不受支持时,我尝试使用REST API来解决这个问题。
我读了这篇文章: MSDN Create Data Source (Azure Search Service REST API)
使用Chrome Extension Postman设置数据更改检测策略。
网址:https://domain.search.windows.net/datasources/temp1?api-version=2015-02-28
身体:
{
"@odata.type" : "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy",
"highWaterMarkColumnName" : "ModifiedDatetime"
}
然后我收到400错误的请求。
错误消息:
{
"error":
{
"code": "",
"message": "The request is invalid. Details: dataSource : Incompatible type kinds were found. The type 'Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy' was found to be of kind 'Complex' instead of the expected kind 'Entity'.\r\n"
}
}
所以,我有两个问题。
1. SDK是不支持此功能的?
2.使用REST API,如何解决错误?
感谢您的回复。
答案 0 :(得分:2)
基于official article,为Views的SQL集成创建数据源的方法是:
{
"name" : "myazuresqldatasource",
"type" : "azuresql",
"credentials" : { "connectionString" : "connection string" },
"container" : { "name" : "table or view name" },
"dataChangeDetectionPolicy" : {
"@odata.type" : "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy",
"highWaterMarkColumnName" : "[a row version or last_updated column name]"
}
}
答案 1 :(得分:0)