查询以获取表中有记录的ID的列表

时间:2018-10-04 07:46:30

标签: c# amazon-web-services .net-core amazon-dynamodb

我有一个具有以下属性的DynamoDb表(名为Fruit):

FruitId - string
CreatedDate - date
Type - number
Payload - blob

我还有一个本地字符串列表List<string> fruitIds;

我想查询Fruit表并仅获取表中具有相应记录(即存在)的ID。

有什么好的方法?现在,我遍历Id中的每个fruitIds,并向DyanmoDb进行单独的查询以查看是否获得了记录,如果这样做,则将其ID保存到另一个名为{ {1}}。

有更好的方法吗?

2 个答案:

答案 0 :(得分:1)

public IQueryable <fruits> GetAllfruitsIDs() {
      return fruits.AsQueryable();
    }

    var data = GetAllfruitsIDs();

   // Or u can use this :
     public IEnumerable<fruits> GetAllfruitsIDs() {
              return fruits.AsQueryable().ToList;
            }

        var data = GetAllfruitsIDs();

答案 1 :(得分:0)

使用Linq非常简单,只需检查项目的FruitId是否在fruitIds中即可:

var result = fruits.Where(f => fruitIds.Contains(f.FruitId));

将您的ID保存到新的本地变量中,如您所说:

List<string> fruitIdsThatExistInDyanmoDb = fruits.Where(f => fruitIds.Contains(f.FruitId))
             .Select(f=> f.FruitId).ToList();
相关问题