2016-11-20 48 views
0

我使用Systemooker的ILookup來創建一個可以處理多個鍵值的字典。我想要的是有一個給定的Vector2(作爲鍵),然後將所有值作爲共享該鍵的列表或數組。查詢查詢表和轉換爲列表

我使用的是統一Vector2

public struct Image 
{ 
    public Vector2 pos19; 
    public string url; 
} 

我首先有一個列表

var items = new List<KeyValuePair<Vector2, Image>>(); 

我填寫表格用

items.Add(new KeyValuePair<Vector2, Image>(intpos, img)); 

,然後我用它轉換成Ilookup

ILookup<Vector2, Image> Images = items.ToLookup(kvp => kvp.Key, kvp => kvp.Value); 

這似乎是工作,但現在我以後要查找的值,某些鍵 我嘗試使用

var pins = Images.Where(kv => ((int)kv.Key.x == x && (int)kv.Key.y == y)).ToList(); 

但這似乎並沒有工作 人有一個想法如何得到的值了關鍵列表?

回答

0

ImagesVector2。你需要獲得一個Vector2來鎖定你的查找。

var pins = Images[new Vector2(x, y)].ToList(); // normally returned as enumerable 
+0

謝謝,工作:) – MasterMind