List 如何从字典中选择随机值并将其分配给列表

List 如何从字典中选择随机值并将其分配给列表,list,file-io,dictionary,random,List,File Io,Dictionary,Random,我有两个字典(由从xml电子表格导入的数据填充,其中包含一些嵌套的foreach循环) 示例Excel xml如下所示: Dictionary sheet3=新字典(); 字典表4=新字典 (); 其中每一项都包括: sheet3.Add(situation, succession) sheet4.Add(srcSituation, new List<KeyValuePair<string,string>>()); sheet4[srcSituation].Add(n

我有两个字典(由从xml电子表格导入的数据填充,其中包含一些嵌套的foreach循环) 示例Excel xml如下所示:

Dictionary sheet3=新字典();
字典表4=新字典
();
其中每一项都包括:

sheet3.Add(situation, succession)
sheet4.Add(srcSituation, new List<KeyValuePair<string,string>>());
sheet4[srcSituation].Add(new KeyValuePair<string, string>(dstSituation, command));
sheet3.添加(情况、继任)
表4.添加(src情况,新列表());
sheet4[srcScience]。添加(新的KeyValuePair(dstScience,command));
在表4中,我可以看到某种“顺序”。表3显示了情况以及这种情况的感觉。在表4中,我有顺序,你们可以看到,第一个是训练,然后进入饥饿状态,然后饥饿变成疲劳,之后,疲劳变成觉醒。每种情况都有“命令”,需要在SRCCOUNTION和DSTCOUNTION之间执行,以使其发生

我想从“sheet4”中随机选取“DStScience”,并将“command”写入txt文件。然后查找“情境”==“DStScience”,并将“继任者”字符串添加到同一个txt文件中。接下来,我将再次开始整个过程,但假设可以选择“DStScience”,其中“srcScience”仅为==之前选择的“DStScience”。以此类推。

这一点的目的是,一旦我获得更多“情境”“将有更多的SRC情况->DST情况和ofc在表4中,将有更多相同的SRC情况进入不同的DST情况

将此想象为一张地图,其中没有一条路线可以实现某个目标,但可以是随机路线。我不知道如何编写它,因为它主要是在字典和列表上运行的循环,我也不知道如何构造正确的语法。

试试这个代码片段

......Codes before

Random rnd = new Random();
int randomValue = rnd.Next(0, sheet3.Count-1);
var result = sheet3.ElementAt(randomValue);
/*
 * Your code here
 */

只需生成随机int,然后使用Dictionary.ElementAt(int)
......Codes before

Random rnd = new Random();
int randomValue = rnd.Next(0, sheet3.Count-1);
var result = sheet3.ElementAt(randomValue);
/*
 * Your code here
 */