2

在我的 C# 程序(.net v4,MS Visual C# Express)中,我试图使用 ListDictionary 类的设置。

这是我的测试代码:

// String setting
Properties.Settings.Default.StringTest = "Llama llama LLAMA!";

// ListDictionary setting
ListDictionary ld = new ListDictionary();
ld.Add("key1", "llama");
ld.Add("key2", "alpaca");

Properties.Settings.Default.LDTest = ld;

// Save settings
Properties.Settings.Default.Save();

执行我的代码后,user.config文件是使用字符串设置编写的,但不是使用 ListDictionary 设置(摘录):

    <setting name="StringTest" serializeAs="String">
        <value>Llama llama LLAMA!</value>
    </setting>
    <setting name="LDTest" serializeAs="Xml">
        <value />
    </setting>

List Dictionary在这里被列为可序列化,但是我需要做一些手动工作才能将其放入设置文件中吗?此外,有什么方法可以确定哪些类/类型可以用作设置,哪些不能?

4

1 回答 1

1

确保启用了 Break When Exceptions throwing,以及 .Net Framework Source Stepping(如果您想查看此异常)。虽然我不认为你想将复杂的数据类型序列化到 Settings.settings 文件,但如果你真的不喜欢这样做,你可以将它序列化为一个用分号和逗号分隔的字符串。

确保您启用了“抛出异常时中断”

于 2011-02-28T22:25:25.200 回答