标签: lookup

LINQ将字典转换为查找

我有一个类型的变量Dictionary<MyType, List<MyOtherType>>
我想将它转换为Lookup<MyType, MyOtehrType>.

我想首先使用Lambda函数,展平字典,然后使用ToLookup().将其转换为Lookup .我被困在字典里.我想过使用SelectMany却无法使用它.任何人都知道该怎么做?

linq lookup dictionary

18
推荐指数
2
解决办法
4357
查看次数

Mongodb从String到ObjectId加入_id字段

我有两个系列

  1. 用户

             {
                 "_id" : ObjectId("584aac38686860d502929b8b"),
                 "name" : "John"
             }
    
    Run Code Online (Sandbox Code Playgroud)
  2. 角色

     {
         "_id" : ObjectId("584aaca6686860d502929b8d"),
         "role" : "Admin",
         "userId" : "584aac38686860d502929b8b"  
     }
    
    Run Code Online (Sandbox Code Playgroud)

我想基于userId(在角色集合中) - _id(在用户集合中)加入这些集合.

我尝试了以下查询:

db.role.aggregate(
{
   $lookup:
   {
       from: 'user',
       localField: 'userId',
       foreignField: '_id',
       as: 'output'
   }
}
);
Run Code Online (Sandbox Code Playgroud)

只要我将userId存储为ObjectId,这就给了我预期的结果.当我的userId是一个字符串时,没有结果.Ps:我试过了

foreignField:'_ id'.valueOf()

foreignField:'_ id'.toString()

.但是基于ObjectId-string字段匹配/加入没有运气.

任何帮助将不胜感激.

lookup join mongodb aggregation-framework objectid

17
推荐指数
3
解决办法
2万
查看次数

ToLookup有多个键

有没有办法要求.ToLookupLINQ提供的功能有多个键?

我承认起初这似乎不直观,我期待没有实际的方法来做到这一点,但我希望有人知道一种方式.

我基本上希望能够通过两个值进行查找,例如a string和an int,并使用这两个值检索对象.

    public class MyClass {
      public string StringProp {get;set;}
      public int IntProp {get;set;}
      public object MoreData {get;set;}
    }

    public class Main {
      public void Main() {
        HashSet<MyClass> set = new HashSet<MyClass>();
        set.Add(new MyClass {StringProp = "a", IntProp = 1, MoreData = null});
        set.Add(new MyClass {StringProp = "c", IntProp = 4, MoreData = new object()});
        set.Add(new MyClass {StringProp = "a", IntProp = 2, MoreData = "upupdowndown"});
        set.Add(new MyClass {StringProp = "c", IntProp …
Run Code Online (Sandbox Code Playgroud)

.net c# lookup

16
推荐指数
3
解决办法
9660
查看次数

为什么Lookup在C#中是不可变的?

与之不同Dictionary,您无法Lookup通过逐个添加元素来构造.你碰巧知道原因吗?

Lookup就像multimap在C++中一样; 为什么我们不能在C#中修改它?如果我们真的不能,我们如何multimap在C#中构建数据结构?

c# lookup dictionary

16
推荐指数
1
解决办法
2125
查看次数

Java HashSet在c ++中的等价物

我很好奇是否有类似于c ++中的Java哈希集的东西.即具有快速外观的数据结构,因为我只会在其上运行.contains(e).同样,如果您可以启发我如何对您提出的任何数据结构执行.contains(),我将非常感激.哦,请不要发布只是看看c ++文档,因为我已经这样做了,发现它们很麻烦.

c++ lookup data-structures

16
推荐指数
1
解决办法
1万
查看次数

JavaScript LHS和RHS查找

我正在阅读范围和关闭你不知道Kyle Simpson的JS书,特别是这个主题Compiler Speak.

他们在那里提到了LHS和RHS查询.我无法理解这两个术语,任何人都可以帮助我实现它们吗?

javascript lookup

16
推荐指数
4
解决办法
5914
查看次数

用C++创建正弦查找表

如何在C++中重写以下伪代码?

real array sine_table[-1000..1000]
    for x from -1000 to 1000
        sine_table[x] := sine(pi * x / 1000)
Run Code Online (Sandbox Code Playgroud)

我需要创建一个sine_table查找表.

c++ lookup trigonometry pseudocode

15
推荐指数
4
解决办法
3万
查看次数

R中的字典数据结构

在R中,我有,例如:

> foo <- list(a=1,b=2,c=3)
Run Code Online (Sandbox Code Playgroud)

如果我打字foo,我得到:

$a
[1] 1

$b
[1] 2

$c
[1] 3
Run Code Online (Sandbox Code Playgroud)

如何查看foo仅获取"密钥"列表?在这种情况下,(a,b,c).

lookup dictionary r list

15
推荐指数
2
解决办法
9915
查看次数

这是因为两次查找而不是一次而变慢了吗?

当我想确保我想要使用的条目存在时,我通常会这样做.

#include <unordered_map>

struct type { int member; };
std::unordered_map<type> map;

if (map.find(key) != map.end())
    map[key].member = 42;
Run Code Online (Sandbox Code Playgroud)

但是,我认为它key在哈希映射中执行两次查找.这会缓存查找.

#include <unordered_map>

struct type { int member; };
std::unordered_map<type> map;

auto find = map.find(key);
if (find != map.end())
    find->second.member = 42;
Run Code Online (Sandbox Code Playgroud)

第一种选择感觉更具表现力.它真的慢吗?

c++ lookup performance unordered-map

15
推荐指数
3
解决办法
1034
查看次数

如何在LocalField中为$ lookup Mongodb将字符串转换为objectId

我想$lookup在mongodb中添加联接集合.我正在尝试如下

{
 $lookup:{
   from:"User",
   localField:"assignedId",
   foreignField:"_id",
   as:"dataa"}
}
Run Code Online (Sandbox Code Playgroud)

现在我有两个系列

用户包含objectid的用户喜欢 "_id" : ObjectId("56ab6663d69d2d1100c074db"),

任务,其中包含assignedIdstring "assignedId":"56ab6663d69d2d1100c074db"

现在,当在两个集合中应用$ lookup时它不起作用,因为Id不匹配.

为此,我用Google搜索并找到了一个包含的解决方案

{ $project: { assignedId: {$toObjectId: "$assignedId"} }}

但这个解决方案不适合我,它抛出一个错误:

assert: command failed: { "ok" : 0, "errmsg" : "invalid operator '$toObjectId'", "code" : 15999 } : aggregate failed
Run Code Online (Sandbox Code Playgroud)

请帮助我如何解决此问题.

谢谢

lookup join mongodb

15
推荐指数
1
解决办法
7417
查看次数