应用程序设置是否有最大大小?

Joh*_*son 8 c# application-settings

背景:我在一个设置中有一个大的xml字符串,但无法反序列化.XmlSerializer抱怨它不是有效的xml.在Project> Settings中查看字符串时,它看起来被截断了.

如果应用程序设置的大小有限但我没有找到任何内容,我google了.

然后我尝试使用以下代码生成的dummydata重现它:

[Test]
public void DumpDummyData()
{
    int n = 500;
    var s = new string('a', 100);
    using (FileStream stream = File.OpenWrite(@"C:\Temp\"+n+".txt"))
    {
        using (var writer = new StreamWriter(stream))
        {

            for (int i = 0; i < n; i++)
            {
                writer.WriteLine( i +" " +s);
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

当在设置中粘贴文件的内容时,在行310处截断该字符串.在两个不同的项目中尝试过.

我的问题是应用设置大小的限制是多少?

Fre*_*dou 5

所以我做了一个快速测试

using System;

namespace ConsoleApplication1
{
class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine(Properties.Settings.Default.test.Length);
        Console.ReadKey();
    }
}
}
Run Code Online (Sandbox Code Playgroud)

测试设置包含超过50,000个字符的长文本

它确实有效.

我做的是手动更改了app.config,而不是从visual studio解决方案属性设置.

我假设设置屏幕使用默认的最大值.文本框的默认最大值为32,767个字符.

那么你可以通过自己更改app.config来再次尝试测试吗?

不要使用visual studio解决方案属性设置屏幕.