更改.Net控制台应用程序中的设置文件项

时间:2015-06-19 07:06:54

标签: c# .net settings application-settings savechanges

我尝试更改我的控制台应用程序想要设置的一些设置并在每次执行时使用。

1)添加了一个名为 InputSettings 的.settings文件。

2)使用Scope:User。添加了两个项目。

3)改变代码如下:

private projAPI.InputSettings settings = new InputSettings();
settings.publishEndDate = DateTime.Now;
settings.Save();

它不会对设置文件进行任何更改,但每次运行项目时,跟踪该行时都会更改设置。

我有什么错误吗?

1 个答案:

答案 0 :(得分:0)

用户设置存储在不同的文件中。见this question

  

如果要以编程方式访问路径,可以使用Configuration Management API执行此操作(需要添加对System.Configuration.dll的引用)。例如,以下是如何获取本地user.config文件路径:

SELECT * FROM a_status_check t1
INNER JOIN
(
    SELECT ID, COUNT(*) AS status_count
    FROM a_status_check
    GROUP BY ID
) t2
ON t1.ID = t2.ID
WHERE (t1.STATUS = 'A' AND t2.status_count = 1)
    OR (t1.STATUS = 'B' AND t2.status_count = 2);

MSDN Documentation列出了一些有关如何使用应用程序和用户设置的示例。

例如How To: Write User Settings at Run Time with C#

  

访问该设置并为其指定一个新值,如下例所示:

Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal);
Console.WriteLine("Local user config path: {0}", config.FilePath);
     

如果要在应用程序会话之间保留对设置的更改,请调用Save方法,如下例所示:

Properties.Settings.Default.myColor = Color.AliceBlue;