Мой сайт локализован, но у меня возникают проблемы с отображением текущей даты в asp.net 4 - PullRequest
0 голосов
/ 18 января 2012

Я не программист, но я разработал сайт небольшой компании в Visual Studio.Я хочу отобразить дату - в определенном формате культуры - на главных страницах.У меня есть это наверху одной из моих обычных страниц aspx:

  <%@ Page Title="USS Vision Control Panel Build" Language="VB" MasterPageFile="~/Services/Services.Master" AutoEventWireup="false"
CodeFile="controlpanels.aspx.vb" Inherits="controlpanels" culture="auto" meta:resourcekey="PageResource1" uiculture="auto" %>

Я следил за многими учебниками ASP в Интернете, и единственный код, который правильно отображался на моей странице, - это следующее:

  <p><%= DateTime.Now.ToString() %></p>

Приведенный выше код приводит к следующему:

  1/18/2012 5:17:36 AM

Проблема в том, что я нахожусь в восточном времени США, а время вышло в тихоокеанском времени.Я думаю, что не хочу, чтобы оно включало время, так как время статично, и это неправильный часовой пояс, и он не обновляется, секунду за секундой.Итак, в итоге, я бы предпочел просто указать дату.Он выглядит более профессионально для моего сайта.

Кто-нибудь знает, что я могу сделать, чтобы решить эту проблему?

Спасибо за любую помощь, которую вы можете предложить!

Джейсон Вебер

Ответы [ 3 ]

2 голосов
/ 18 января 2012

Это даст вам текущую дату без времени.

DateTime.Today.ToString(System.Globalization.CultureInfo.CurrentUICulture.DateTimeFormat.ShortDatePattern)

При запуске она выдаст:

1/18/2012

1 голос
/ 18 января 2012

Для правильного форматирования строки вы можете использовать:

<p><%= DateTime.Now.ToString("MM/dd/yyyy") %></p>

Что даст вам 18.01.2012 (обратите внимание на заглавную букву 'M').

Если вы хотитепоказать местное время в зависимости от местоположения пользователя, а не от времени сервера, которое вы можете использовать.

<p><%= DateTime.Now.ToLocalString.ToString() %></p>

Надеюсь, это поможет.

1 голос
/ 18 января 2012

Вы можете указать строку формата в качестве параметра при вызове .ToString()

, например

DateTime.Now.ToString("dd-MMM-yy")

Выходы: -

18-Jan-2012 

По крайней мере, сегодня, во всяком случае.

См. Эту статью для получения дополнительной информации о параметрах формата.

http://msdn.microsoft.com/en-us/library/az4se3k1%28v=vs.100%29.aspx

Обратите внимание, что любая дата, полученная с сервера, будет указана по местному времени сервера.

Если вы хотите сообщить дату клиента, может быть намного проще выбрать решение Javascript (которое будет использовать дату на компьютере вашего пользователя).

...