来自 PHP 背景的我可以用 PHP 做到这一点:
$array[sales_details][uid] = 1;
$array[sales_details][name] = "Name Surname";
$array[sales_details][sales][France][Paris] = 50;
$array[sales_details][sales][France][Lyon] = 25;
$array[sales_details][sales][UK][London] = 75;
$array[sales_details][sales][German][Berlin] = 23;
如何在 C# 中执行此操作?我试着查字典。但即使我将值键定义为对象,它也不会接受“sales”数组。
var dict = new Dictionary<string, object>();
dict["uid"] = 1;
dict["sales"]["France"]["Paris"] = 50; //error kicks in here
这可以用 C# 实现吗?
最佳答案
在我看来,您试图将很多信息放入数组中,而实际上必须是一个对象。
您可以使用 jagged arrays 解决此问题,但对象要好得多。
创建一个这样的类:
public class SalesDetails
{
public string Uid {get;set;}
public string Name {get;set;}
public List<SalesItem> SalesItems {get;set;} = new List<SalesItem>();
}
然后自己计算出 SalesItem
、City
以及您需要的所有其他对象。
关于c# - 多维关联数组 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34872932/