C#app.config读写

C#app.config读写,c#,persistence,app-config,C#,Persistence,App Config,我们可以在app.config文件中保存数据或一些文本吗 如果是,那么它是持久性的还是暂时性的 例如,如果我将上次访问日期时间存储在app.config文件中,然后在启动应用程序的某个时间/天/年后关闭/退出应用程序,则我可能检索到上次访问日期时间。如果是,请用代码说明 谢谢, 拉吉 这是我的密码 正在尝试从配置文件检索日期时间。。 但显示错误对象未设置为像 System.Configuration.Configuration config = ConfigurationManager.Open

我们可以在app.config文件中保存数据或一些文本吗 如果是,那么它是持久性的还是暂时性的

例如,如果我将上次访问日期时间存储在app.config文件中,然后在启动应用程序的某个时间/天/年后关闭/退出应用程序,则我可能检索到上次访问日期时间。如果是,请用代码说明

谢谢, 拉吉

这是我的密码

正在尝试从配置文件检索日期时间。。 但显示错误对象未设置为像

System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

if (email.To.Contains(Email) && DateTime.Compare(email.UtcDateTime.Date, Convert.ToDateTime(config.AppSettings.Settings["ModificationDate"].Value)) > 0)
在这里,我在app.config文件中存储/保存日期时间

System.Configuration.Configuration config =
             ConfigurationManager.OpenExeConfiguration
                        (ConfigurationUserLevel.None);

// Add an Application Setting.
config.AppSettings.Settings.Add("ModificationDate", DateTime.Now + " ");

// Save the changes in App.config file.
config.Save(ConfigurationSaveMode.Modified);

// Force a reload of a changed section.
ConfigurationManager.RefreshSection("appSettings");

Console.WriteLine("Last Update :"+config.AppSettings.Settings["ModificationDate"].Value);
Console.ReadLine();

请告诉我为什么它会向我显示一个错误,即object not set am done ans.有任何错误请回答。

您可以像任何其他文件一样使用
App.config
进行存储,它将持续存在,并在下次运行程序时可用。这就是文件存储的一般性质。我建议您将这些数据存储在单独的文件或数据库中。但是,我不会为您编写代码。

您可以创建一个设置xml文件来执行此操作

在VS中,转到项目属性->
设置
,然后在中写入值

在代码中,您可以使用

Properties.Settings.Default.YourVariable = 0;
如果要设置该值,请确保保存该值

Properties.Settings.Default.Save();

有关良好的教程,请参阅。

我将使用自定义配置部分创建您的配置类型-上次访问日期时间。您可以创建更复杂的层次结构配置和强类型

同样,如果您需要这样做,这取决于您的需求和设计。否则,标准文件存储(txt/xml)也允许您这样做。我个人通常使用app.config进行特定于应用程序的级别(外观/字体/服务器名等)配置,而不是事务性配置

例如

public class LastAccessConfigurationSection : System.Configuration.ConfigurationSection {
    [ConfigurationProperty("LastAccess")]
    public string LastAccess{
        get { return (string)this["LaunchTime"]; }
        set { this["LaunchTime"] = value; }
    }
}
您可以使用一个静态类来管理生命周期,从而允许您持久化更改

public static LastAccessConfigurationSection Config { get; internal set; }

    public static void Initialize() {
        Config = ConfigurationManager.GetSection("LastAccess") as LastAccessConfigurationSection;
    }

这不是暂时的,你可以继续。但这不是处理您的需求的正确方法