2016-05-06 6 views
0

国名と現在の日時を示すドロップダウンリストがあります。私は、選択した国の現在の日付と時刻をドロップダウンからそのlableに表示したいだけです。私はASP.Netのウェブサイトに取り組んでいます。asp.netのドロップダウンリストから国名を選択する際に、現在の国の国々を表示したい

+1

あなたは既に完了しましたか? – Kamo

+3

"* *現在の日時"?いくつかの国は複数の*タイムゾーンにまたがっています。このような国には、特定の現在の日付と時刻はありません。例には、米国が含まれています(あなたが知っているかもしれません) –

答えて

2

あなたは、ドロップダウンリストの値として、タイムゾーンを通過してから、そのためのコードであるここで、特定の国

の時間を取得するために、その値を使用することができます -

<asp:DropDownList ID="ddlcountry" runat="server" AutoPostBack="true" OnSelectedIndexChanged="ddlcountry_SelectedIndexChanged"> 
      <asp:ListItem>Select country</asp:ListItem> 
      <asp:ListItem Text="South Africa" Value="South Africa Standard Time"> </asp:ListItem> 
      <asp:ListItem Text="Abu Dhabi,Mascut" Value="Arabian Standard Time"> </asp:ListItem> 
      <asp:ListItem Text="Bangkok, Hanoi, Jakarta" Value="SE Asia Standard Time"> </asp:ListItem> 
     </asp:DropDownList> 

とaspx.csページ

protected void ddlcountry_SelectedIndexChanged(object sender, EventArgs e) 
    { 
     string country = ddlcountry.SelectedValue.ToString(); 
     string country_name = ddlcountry.SelectedItem.ToString(); 

     var info = TimeZoneInfo.FindSystemTimeZoneById(country); 
     DateTimeOffset localServerTime = DateTimeOffset.Now; 
     DateTimeOffset istambulTime = TimeZoneInfo.ConvertTime(localServerTime, info); 

     string datetime = istambulTime.ToString(); 
     Response.Write(country_name + " Time :- " + datetime); 
    } 
+0

返信ありがとうございます。しかしこの場合、各国の価値を「アラブの標準時」「SEアジア標準時」のように知る必要があります。私は自分のコードでこれらの値をハードコードする必要があります。これを行うための他の方法はありますか?そしてどこから私は国別に値を得ることができます。 –

+1

@Damien_The_Unbelieverは、すでにいくつかの国が複数のタイムゾーンにまたがっているという彼のコメントに言及しています。このような国には、特定の現在の日付と時刻はありません。私はあなたがそれぞれの国に対応するタイムスタンダードゾーンを追加する必要があると思います。この情報を追加することもできます。あなたのドロップダウンリストをバインドする –

関連する問題