0
sthを作成する可能性はありますか? PHPのような連想配列のように? 私はいくつかのプレイヤーデータでゲームを作成する予定はありませんが、私は簡単に私が欲しいものをこのように説明できる:C#mimic未知のキー番号の連想配列(PHPのように)
player["Name"] = "PName";
player["Custom"]["Gender"] = "Female";
player["Custom"]["Style"] = "S1";
player["Custom"]["Face"]["Main"] = "FM1";
player["Custom"]["Face"]["Eyes"] = "FE1";
player["Custom"]["Height"] = "180";
また長は私にはない、ダイナミックなければなりませんあるでしょうどのように多くのキー:
player["key1"]["key2"]=value
player["key1"]["key2"]["key3"]["key4"]...=value
私は必要なものはかなっています。私は次のようにアドレスすることができます:
string name = player["Name"];
string gender = player["Custom"]["Gender"];
string style = player["Custom"]["Style"];
string faceMain = player["Custom"]["Face"]["Main"];
string faceEyes = player["Custom"]["Face"]["Eyes"];
string height = player["Custom"]["Height"];
またはこれと似たような方法です。
私が今まで試した:
Dictionary<string, Hashtable> player = new Dictionary<string, Hashtable>();
player["custom"] = new Hashtable();
player["custom"]["Gender"] = "Female";
player["custom"]["Style"] = "S1";
しかし、問題は(のみ2つのキーで動作します)ここから:正確にこれを複製することは容易ではないようですので、
player["custom"]["Face"] = new Hashtable();
player["Custom"]["Face"]["Main"] = "FM1";
[辞書](https://msdn.microsoft.com/en-us/library/xfhwa508(V = VS。 110).aspx)が必要なものを持っているはずです。そうでない場合:.net-generic-collectionsはあらゆる目的のためのクラスを持っています。しかし、よりクリーンな方法は、あなたのプレーヤーとそのプロパティを表すクラスを定義することです –
これはPHPと何が関係がありますか? – Epodax
PHPとの関係: "連想配列"はPHPでは存在しますがC#では存在しません。同等。 – Dobi