C# 创建字典<;元组<;字符串>;,元组<;字符串,对象>&燃气轮机;用于存储来自不同文件夹的多个json文件名和数据

C# 创建字典<;元组<;字符串>;,元组<;字符串,对象>&燃气轮机;用于存储来自不同文件夹的多个json文件名和数据,c#,arrays,json,dictionary,json.net,C#,Arrays,Json,Dictionary,Json.net,下面是父文件夹下的示例文件夹结构,有子目录,然后是文件,我想读取它们并将其存储在变量中,并将它们用于不同的方法,但没有成功 示例代码: //Task<Dictionary<Tuple<string>, Tuple<string, object>>> a; Task<Dictionary<string, List<Tuple<string, object>>>> a;

下面是父文件夹下的示例文件夹结构,有子目录,然后是文件,我想读取它们并将其存储在变量中,并将它们用于不同的方法,但没有成功

示例代码:

  //Task<Dictionary<Tuple<string>, Tuple<string, object>>> a;
            Task<Dictionary<string, List<Tuple<string, object>>>> a;

            List<IListBlobItem> folders;
            try
            {
                CloudBlobContainer container = Retrier<CloudBlobContainer>.TryWithDelayIncremental(() => blobclient.GetContainerReference(ContainerName), NoOfRetries, DelayInMilliSecs);

                var blobs = container.ListBlobs(useFlatBlobListing: false, blobListingDetails: BlobListingDetails.None);
                folders = blobs.Where(b => b as CloudBlobDirectory != null).ToList();

                foreach (CloudBlobDirectory directory in folders)
                {
                    if (directory.Prefix == "initiatives/")
                    {
                        foreach (CloudBlobDirectory subDirectory in directory.ListBlobs())
                        {
                            foreach (IListBlobItem item in subDirectory.ListBlobs())
                            {
                                CloudBlockBlob blob = (CloudBlockBlob)item;

                                string name = blob.Name;
                                string[] split = name.Split('/');
                                var ms = new MemoryStream();
                                var policyData = blob.DownloadText();


                                a.ToDictionary(pair => pair.Key,
                         pair => pair.Value.Select(tuple =>
                              tuple.Create(tuple.Item1,
                                           tuple.Item2,
                                           ConvertToEnum(tuple))).ToArray());
                                //create initiative assignment folder
                                // ManagementGroupClient mg = new ManagementGroupClient(Token);
                                //await mg.DeployPolicyToMG(split[2], policyData, split[1]);

                                // send the name of the initiative file , response 
                                Console.WriteLine(item);
                            }
                        }
                    }


我想在字典中添加initiative1文件夹,我应该添加文件名和文件数据,Initiative2文件夹,文件名和文件数据的列表等等。老实说,我想你会被这个复杂的数据存储所束缚;创建一个具有合理命名属性的合理命名类需要几秒钟的时间,而不是创建一个到处都是Item1、2、7、99的tupletuple…问题是什么?@RufusL,我正在寻找选项来存储要重用的文件,我的问题是文件夹结构的格式,但使用tuples@CaiusJard,您能否提供一个示例代码,说明您的建议,这将真正帮助我理解DeepDive
Parent folder -  sub directoryfolder  - files 
Initatives --     initative1          policy1.json
                                      policy2.json

                  initiative2        policy3.json
                                     policy4.json