Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

DateTime property in a ConfigurationElement

I'm wanting to put a DateTime in to the config file, however, I want the DateTime expressed in a specific way. I've seen examples of using a DateTime in a ConfigurationElement (like the example below). The examples I've seen all have the date expressed in American format. I want to ensure that date is understandable by all regardless of who they are so I want to use yyyy-MM-dd HH:mm:ss as the format.

How do I do that when using a class derived from ConfigurationElement?

    class MyConfigElement : ConfigurationElement
    {
        [ConfigurationProperty("Time", IsRequired=true)]
        public DateTime Time
        {
            get
            {
                return (DateTime)this["Time"];
            }
            set
            {
                this["Time"] = value;
            }
        }
    }
like image 299
Big Hair Avatar asked Aug 17 '09 21:08

Big Hair


1 Answers

I guess you can use the following:

[ConfigurationProperty("Time", IsRequired=true)]
public DateTime Time
{
    get
    {
        return DateTime.ParseExact(
            this["Time"].ToString(),
            "yyyy-MM-dd HH:mm:ss",
            CultureInfo.InvariantCulture);
    }
    set
    {
        this["Time"] = value.ToString("yyyy-MM-dd HH:mm:ss");
    }
}
like image 127
M4N Avatar answered Oct 06 '22 07:10

M4N