我有一项服务需要从APP配置接收配置,以便在需要更改搜索条件时更容易更新 - 例如,如果发生错误。 所以,说我想知道如何在app.config中设置Datetime值
我想要类似的东西:
<add key="MyDate" value="DateTime.Now" />
答案 0 :(得分:0)
C#中的示例:
的app.config
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="MyDate" value="2014-01-01" />
</appSettings>
</configuration>
在表单中......使用DateTimePicket和Button生成例如:
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);
}
答案 1 :(得分: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
。