0
我是新的TypeScript/Angular JS 2.我有一個用C#編寫的函數,需要在TypeScript中進行轉換。下面是功能 -TypeScript數據類型鑄造
public static MyModel GetDetails(IDictionary<string, object> Obj) {
MyModel dlModel = new MyModel();
if (Obj.ContainsKey("action"))
dlModel.action = ((IEnumerable<object>)Obj["action"]).Cast<string>().ToList();
if (Obj.ContainsKey("parameters")) {
List<object> pr = ((IEnumerable<object>)Obj["parameters"]).Cast<object>().ToList();
foreach (object obj in pr) {
IDictionary<string, object> kValue = (IDictionary<string, object>)obj;
dlModel.parameters.Add(new KeyValuePair<string, string>(kValue["Key"].ToString(), kValue["Value"].ToString()));
}
}
但我不知道如何在TypeScript中使用IDictionary和IEnumerable。所以任何人都可以幫助我在TypeScript數據類型。
字典將是可轉位的對象和可枚舉的陣列。 – toskv
這個問題對我來說不是很清楚。我不知道除了在TypeScript中編寫一個可能的實現之外,我能做些什麼。你在類型轉換時遇到了什麼問題,以及'IDictionary'和'IEnumerable'有什麼問題?基本上,您可以在TypeScript中爲'IDictionary'和'Iterable'使用'Map'或特殊類型'any'作爲'IEnumerable'。值可以通過keywourd'as'來投射。 – JojOatXGME
@JojOatXGME在打字稿中沒有類型轉換,只有類型斷言。關鍵詞只是告訴編譯器變量的類型是什麼(它在運行時不會做任何事情)。 – toskv