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