这个问题有点复杂,所以我会尝试解释。 我有一个我用Xcode创建的自定义.plist(XML Property List)文件。 其中有许多不同类型的数据:NSDictionary,NSArray,NSString,BOOL等。

这是一个例子:

在此输入图像描述

在我的代码中,我可以快速获取整个文件的NSDictionary ,而无需使用以下代码知道数据类型(顺便说一下,这是ARC代码)。 我唯一知道的数据类型是所有键都是字符串,但是值可以是我上面显示的任何值:

+ (NSDictionary *)configDictionary
{
    collectorstemplateAppDelegate *appDelegate = (collectorstemplateAppDelegate*)
           [[UIApplication sharedApplication] delegate];
    NSString *path = [[NSBundle mainBundle] 
           pathForResource:appDelegate.currentPlist ofType:@"plist"];
    NSDictionary *dict = [[NSDictionary alloc] initWithContentsOfFile:path];
    return dict;
}

我想做的是在C#上完成同样的事情。 我想把这些plist移到我的Windows Phone手机应用程序中,保持相同的结构。 我意识到我将需要编写一些其他代码来处理文件后的XML,但是您明白了...。我想要一个DictionaryHashTableCollection ,其操作与我上面所做的类似,而又不知道值的类型。

显然在我的情况下,像Dictionary<string, string>这样的东西对我来说不起作用。

任何帮助都会很棒。

===============>>#1 票数:3 已采纳

在这里回答我自己的问题,但寻找验证....

Dictionary<string, object>起作用吗? 因为我知道键是一个字符串,我只需要将值转换为适当的类型,对吗?

int appleID = (int) plistDict["appleid"];

如果这是正确或不正确的,请有人告诉我。

===============>>#2 票数:0

Hashtable是Dictionary的非泛型版本。 换句话说,它不需要您指定它处理的类型,您可以像在Objective-C中那样兑现。

  ask by Ethan Allen translate from so

未解决问题?本站智能推荐:

1回复

使用C#的Windows Phone 7上的NSUserDefaults等效项是什么?

我正在尝试存储与小设置有关的数据,就像在iOS上使用NSUserDefaults一样。 Windows Phone 7的等效功能是什么?
2回复

C#中UIImage * anImage的等效项是什么?

在Objective-C中,我可以执行以下操作,并将UIImage(图像)对象传递给函数,例如: C#中的等效项是什么? 此问题与Windows Phone编程有关。
2回复

Objective-C与C#中的单例类?

我已经习惯了Objective-C,所以我知道要创建一个单例方法,我要做的就是: 并称之为 如何在C#中执行相同的操作?
1回复

什么是Objective-C中的ComponentsSeparatedByString的C#.NET Silverlight等效项?

什么是Objective-C中的ComponentsSeparatedByString的C#.NET Silverlight等效项? 以下是该方法在Objective-C中的工作方式: C#.NET是否有类似清单的内容?
1回复

在C#中使用NumericComparer代码,为什么我的List.Sort()收到转换错误?

我正在使用此处的NumericComparer代码。 将其添加到项目中非常容易: NumericComparer 我有一个包含数字的字符串列表,我的代码就是这样: myList.Sort(new NumericComparer()); 我得到的错误是这样的: 无法从“ ns.
1回复

将JavaScript集合声明代码转换为相应的C#代码

我正在开发使用Web API调用的Windows Phone应用。 大部分调用都返回JSON字符串,但其中之一返回以下代码行: 似乎上面提到的代码行是JavaScript集合的常规声明。 这确实意味着我无法将其解析为JSON,而且其中包含一个单词 “ var buyPric
1回复

Silverlight上的.NET在Objective-C中是否具有firstObjectCommonWithArray的等效项?

这是Objective C中firstObjectCommonWithArray的正式解释: 返回包含在接收数组中的第一个对象,该对象等于另一个给定数组中的对象。 原始签名是-(id)firstObjectCommonWithArray:(NSArray *)otherArra
3回复

如何在C#中动态添加类实例

我要问的可能是愚蠢的。 例如:我有两个班 地址.cs 我可以在运行时使用for循环使用address2和address3作为Address类的实例来增加Login类的成员。 可以做到这一点吗?我有一个像这样使用的api,而不是使用地址作为列表/数组。 如果让我感到困惑,
2回复

如何在C#中绘制图形

我正在尝试在C#中绘制图形。我想知道是否有最佳方法吗? 我已经在使用ZedGraph库来绘制图形,但是在Windows 8上不起作用,并且该库只能在Winform Application中使用。 我不要这些限制。我已经看到了这个问题 如何在C#中绘制XY图? 因此,请帮助或建议任
2回复

是否有可能使CLR JIT在WP7中使用C#中的SIMD?

如果我有4个浮点数我希望在Windows Phone 7上成倍增加,有什么方法可以用C#编写它,这样CLR JIT会用SIMD指令优化它吗? 我正试图通过我的WP7手机获得更多性能,这是一个计算密集型应用程序。 我有一个带有Snapdragon处理器的HTC 7 Trophy,它支持NE