【问题标题】:How do I use the 'Project Properties>Settings'?如何使用“项目属性>设置”?
【发布时间】:2016-12-17 07:25:05
【问题描述】:

我想为我的 C# 程序设置缓存限制,因此我决定使用 Visual Studio [2015] 的 Project Properties>Settings 功能来实现。

我得到了一些帮助,并被告知输入this

我想要的设置如下:

文件夹路径- C:\SysApp

大小限制- 150MB

要删除的数量- 149MB

对于sizeLimittoDelete 部分,我需要知道它们的单位(即字节、兆字节、千字节...),以便我可以将它们转换为上面列出的单位。

我也被告知

如果您更改程序中的设置值,您需要在退出应用程序之前保存新值。这是通过Properties.Settings.Default.Save(); 完成的。此命令使用您的值创建一个 .config 文件。

我需要知道在我的编码中插入Properties.Settings.Default.Save(); 命令的位置。

屏幕截图会非常很有帮助。谢谢。

【问题讨论】:

    标签: c# visual-studio visual-studio-2015 save


    【解决方案1】:

    不可能将单元等元数据存储到默认设置中。您必须定义用户应输入的单位(kB、MB、...)或将其存储为字符串(例如 150MB)并自行解析。

    设置值后必须调用Save方法(示例):

    Properties.Settings.Default.sizeLimit = 150000
    Properties.Settings.Default.Save();
    

    如果您只想读取设置(参见下面的 cmets),请将 settings 的范围从“用户”更改为“应用程序”,然后像这样读取程序中的设置:

    class Program {
    void main(string args[]) {
    
        String folderPath = Properties.Setings.Default.folder;
        int folderSizeLimit = Properties.Setings.Default.sizeLimit;
        int amountToDelete = Properties.Setings.Default.toDelete;
        DeleteOldFilesIfOverFolderLimit(folderPath, folderSizeLimit, amountToDelete);
    }
    private private void DeleteOldFilesIfOverFolderLimit(string folderPath,
                                             long folderSizeLimit,
                                             long amountToDelete)
        ...... from other post .....
    }
    

    }

    【讨论】:

    • 是的,如果有用,请毫不犹豫地为答案投票。
    • 那么我应该将其粘贴到 Program.cs 或 Settings.cs 中还是什么?
    • 你能帮我截个图吗?
    • 也许我没有理解对。您是否希望用户可以在运行时设置它们,还是只让它们可配置(不是硬编码)?在第一种情况下,您需要一种方式,用户可以输入此值(例如,带有文本框的表单),在第二种情况下,您不需要任何代码。 Simpy 转到settings 并将范围从“用户”更改为“应用程序”。然后 Visual Studio 会在你的 application.config 文件中创建它们,你可以在启动程序之前设置它们。
    猜你喜欢
    • 2016-11-03
    • 1970-01-01
    • 1970-01-01
    • 2010-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-19
    • 1970-01-01
    相关资源
    最近更新 更多