小编Sas*_*asi的帖子

使用NEST对ElasticSearch进行批量更新

我正在尝试使用NEST替换ES上的文档.我看到以下选项可用.

选项1:

var documents = new List<dynamic>();

`var blkOperations = documents.Select(doc => new BulkIndexOperation<T>`(doc)).Cast<IBulkOperation>().ToList();   
var blkRequest = new BulkRequest()
{
    Refresh = true,
    Index = indexName,
    Type = typeName,
    Consistency = Consistency.One,
    Operations = blkOperations
};
var response1 = _client.Raw.BulkAsync<T>(blkRequest);
Run Code Online (Sandbox Code Playgroud)

选项#2:

var descriptor = new BulkDescriptor();
foreach (var eachDoc in document)
{
    var doc = eachDoc;
    descriptor.Index<T>(i => i
        .Index(indexName)
        .Type(typeName)
        .Document(doc));
}
var response = await _client.Raw.BulkAsync<T>(descriptor);
Run Code Online (Sandbox Code Playgroud)

那么有人可以告诉我哪个更好或者使用NEST进行批量更新或删除的任何其他选项?

elasticsearch nest elasticsearch-bulk-api

13
推荐指数
1
解决办法
7250
查看次数

使用 AngularJS 执行存储为字符串的 JavaScript 函数

有什么方法可以动态注入存储在 AngularJS 控制器中的字符串中的 JavaScript 代码吗?

var dynamicJS = "function DoSomething(value){var x = 1+1  return 2;}"
Run Code Online (Sandbox Code Playgroud)

我必须将上述函数动态注入到我的 AngularJS 控制器中,并在下拉列表的选择更改时调用它,其值绑定到 AngularJS 控制器。原因是 JavaScript 函数会根据我在应用程序级别的配置所拥有的每一行数据而有所不同。我知道我们可以利用,$eval但希望获得一些更好的方法(如果存在)。

谁能给我任何关于这个的想法吗?

注意:我使用的是 AngularJS v1.4.5

javascript angularjs

5
推荐指数
1
解决办法
1503
查看次数