无法将类型Dictionary <String,int>隐式转换为int

dod*_*otu 1 c# dictionary

我正在尝试开发一个Xna项目并制作一个碰撞检测机制.我有一个Dictionary对象,如:

Dictionary<string, int> boneIndices = new Dictionary<string, int>();
Run Code Online (Sandbox Code Playgroud)

我希望从上面这行字典中获取indixes:

 int boneIndex = this.animator.skinningData.BoneIndices;
Run Code Online (Sandbox Code Playgroud)

但我接受了一个主题错误.

怎么能解决这个错误?

Ond*_*cek 7

您忘记提供键来查找值,如下所示:

int boneIndex = this.animator.skinningData.BoneIndices["someKey"];
Run Code Online (Sandbox Code Playgroud)

错误的含义是您将整个类型字典分配给类型Dictionary<string, int>变量int.除了我向你展示的使用索引器之外,还有其他一些方法可以从字典中获取值.您可以在MSDN上找到它们.