我有这个片段。
List<Frames> FrameList;
其中 Frames 是一个仅包含原语的类,包括字符串字段“ExerciseID”。
...
void GetFramesForExercise(string exerciseID)
....
if (exerciseID == "3.2.2") {
Console.Write(""); } // quick and dirty to add a breakpoint
if (FramesList[115].ExerciseID.Equals(exerciseID)) {
Console.Write(""); } // quick and dirty to add a breakpoint
frames = (Frames)FramesList.Single(r => r.ExerciseID.Equals(exerciseID));
通过在console.write 语句上设置断点,我可以看到exerciseID 确实等于“3.2.2”,并且FramesList[115] 指向ID 等于“3.2.2”的Exercise 实例。指向的实例已正确初始化。
为什么我的查询会引发 InvalidOperationException?