2014-02-14 93 views
0

我有一个服务需要从APP配置接收配置,以便在需要更改搜索标准时更容易更新 - 例如发生错误时。 所以,说我想知道如何在app.config中设置日期时间值在App.Config中设置日期时间

我想是这样的:在C#

<add key="MyDate" value="DateTime.Now" /> 

回答

0

如果要此设置默认为DateTime.Now,或允许指定一个特定的值,那么你可能需要一些像这样的代码:

Dim magicDate = If(Not String.IsNullOrWhiteSpace(
         ConfigurationManager.AppSettings("OverrideMagicDate")), 
     Date.Parse(ConfigurationManager.AppSettings("OverrideMagicDate")), 
     Date.Now) 
app.settings

现在你离开OverrideMagicDate设定值空获得DateTime.Now或您提供一个特定的日期。

<add key="OverrideMagicDate" value="" /><!-- DateTime.Now --> 

或:

<add key="OverrideMagicDate" value="2012-01-13" /><!-- 13th Jan 2012 --> 

您可能需要切换到Parse如果ParseExact你想在你接受什么格式的日期进行更多的控制。

+0

谢谢,这个伎俩 –

0

例子:

的app.config

<?xml version="1.0"?> 
<configuration> 
    <appSettings> 
    <add key="MyDate" value="2014-01-01" /> 
    </appSettings> 
</configuration> 

在形式与...和DateTimePicket按钮生成例如:

private void bChange_Click(object sender, EventArgs e) 
{ 
    Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); 
    AppSettingsSection app = config.AppSettings; 
    app.Settings["MyDate"].Value = this.dtMyDate.Value.ToShortDateString(); 
    config.Save(ConfigurationSaveMode.Modified); 
} 
+0

如果我设置DateTime.Now而不是真正的日期,这是否工作? –

+0

这是一个DateTime输入的例子,可以将this.dtMyDate.Value替换为DateTime.Now.ToShortDateString(); – jokie1982

相关问题