ASP.NET время не форматируется должным образом - PullRequest
0 голосов
/ 20 марта 2012

Я боролся с этим глупым повторителем всю ночь.Я могу получить Даты для правильного форматирования, используя <%#Eval("Start Date", "{0:MMM dd, yyyy}") %>, но использование <#Eval("Start Time", "{0:t}") %> означает НЕ для получения нужного времени.Независимо от того, какой формат форматирования я использую, он все равно выглядит как «чч: мм: сс» в формате военного времени.

Я попробовал жестко запрограммировать настройки глобализации в файле web.config.Я пробовал каждую комбинацию символов форматирования, которую может предложить Интернет, но независимо от того, что я делаю, он все равно выходит "15:45:00"

КАК я могу заставить эту глупость выплюнуть "3: 45 вечера "вместо" 15:45:00 "!?Я в конце своего остроумия.

Я пробовал: <%# Eval("Start Time")%><%# Eval("Start Time", {0:t}") %><%# Eval("Start Time", {0:T}") %><%# DataBinder.Eval(Container.DataItem, "End Time", "{0:t}") %><%# DataBinder.Eval(Container.DataItem, "End Time", "{0:T}") %>...Ничто никогда не меняется.

Ответы [ 2 ]

7 голосов
/ 20 марта 2012

Для форматирования TimeSpan в стиле чч: мм, Bind нужен неэкранированный формат, а Eval нужен экранированный формат.

Text='<%# Bind("start_time","{0:h\:mm tt}") %>'
and
Text='<%# Eval("start_time",@"{0:h\:mm tt}") %>'

Здесь я написал больше об этом поведении.

0 голосов
/ 20 марта 2012

Попробуйте это:

String.Format("{0:h\:mm tt}", Container.DataItem);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...