2015-06-19 22 views
1

我试图更改我的控制台应用程序想要在每次执行时设置和使用的一些设置。更改.Net控制台应用程序中的设置文件项目

1)添加了一个名为的设置文件InputSettings

2)在Scope:User中添加两项。

3)改变这样的代码:

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

它没有在设置文件进行任何更改,但每次我运行一个项目,设置改变时,我跟踪该行。

我有什么错误吗?

+0

您需要提供更多信息。我们不知道InputSettings是如何工作的('projAPI'似乎是你项目中的命名空间)。你可能会看看'InputSettings.Save()'方法背后的代码。 – nilsK

回答

0

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

如果你想要去的路径编程,您可以使用配置管理API(需要添加到System.Configuration.dll参考)做到这一点。例如,这里是你如何能得到当地user.config文件路径:

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

MSDN Documentation列出了如何使用应用程序和用户设置的几个例子。

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

访问设置,如本例所示为它分配一个新值:

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

如果你想坚持的更改应用程序会话之间的设置,通话Save示例如下例所示:

Properties.Settings.Default.Save(); 
+0

以及如何在新路径中保存/获取值? –

+0

您实际上并不需要知道文件的位置以便存储和检索设置。我只是想告诉你,用户设置在用户的AppData文件夹中有自己的文件(为了让不同的用户有不同的值)。 有关于如何使用设置的示例[此处](https://msdn.microsoft.com/en-us/library/bb397750(v = vs.110).aspx)。例如:[如何:在运行时使用C#编写用户设置](https://msdn.microsoft.com/en-us/library/bb397755(v = vs.110).aspx) – Suigi

+0

我尝试了完全相同的如上链接。但没有保存设置。 –

相关问题