-1

辞書を初期化しstring,datetimeたいのですが、各文字列の「リアルタイム」値が必要です。後で、文字列をキーとしてドロップダウンリストに挿入し、日時を値として挿入したいと思います。

1 hour (string)- datetime(1 hour value)  
5 hour (string)- datetime(5 hour value)  
2 days (string)- datetime(2 days value)  
3 weeks (string)-datetime(3 weeks value) 

こういう辞書はどうやって作るの?

public Dictionary<string,DateTime> TimeStep()
    {
        Dictionary<string,DateTime> timestep = 
        { "1  Hour", "2  Hours", "5  Hours", "10 Hours", "15 Hours", "24 Hours", "Two Days", "Five Days", "Ten Days", "Two Weeks", "Month" };
        return timestep ;        
    }
4

3 に答える 3

5
var dic = new Dictionary<string, TimeSpan>()
          {
                {"1  Hour", TimeSpan.FromHours(1)},
                {"Two days", TimeSpan.FromDays(2)}
          };
于 2013-02-28T06:27:01.653 に答える
2

代わりにDateTime使用する必要がありますTimeSpan

Dictionary<string, TimeSpan> dictionary = new Dictionary<string, TimeSpan>();
dictionary.Add("1 hour", new TimeSpan(1, 0, 0)); //1 hour
dictionary.Add("2 days", new TimeSpan(2, 0, 0, 0));//2 days
于 2013-02-28T06:25:55.810 に答える
0

これを試して:

Dictionary<string, TimeSpan> testDictionary = new Dictionary<string, TimeSpan>() 
{ 
    {"1 hour", TimeSpan.FromHours(1) },
    {"2 hour", TimeSpan.FromHours(2) },
    {"3 hour", TimeSpan.FromHours(3) }
};

または、以下のように Dictionary のAddメソッドを使用します。

Dictionary<string, TimeSpan> testDictionary = new Dictionary<string, TimeSpan>();
testDictionary.Add("1 Hour", TimeSpan.FromHours(1));
于 2013-02-28T06:32:56.667 に答える