2013-09-13 4 views
0

У меня есть приложение asp.net (WebForms), в котором есть подробный вид (вставить режим) для добавления новых данных.asp.net DetailView Формат поля даты и времени не соответствует формату SQL Server

2 его полей: datetime тип. Я определил столбцы базы данных SQL Server как datetime.

Теперь, когда я пытаюсь добавить дату и время, он говорит, что он не соответствует формату!

Я видел людей, имеющих такую ​​же проблему, но, к сожалению, их решения не сработали для меня. Как я могу убедиться, что формат соответствует? Можно ли отображать текущее время-дату в качестве образца, чтобы пользователь следил за ним?

Заранее благодарен!

DetailsView Код:

<Fields> 
      <asp:BoundField DataField="projectName" HeaderText="projectName" SortExpression="projectName" /> 
      <asp:BoundField DataField="projectType" HeaderText="projectType" SortExpression="projectType" /> 
      <asp:BoundField DataField="subjectName" HeaderText="subjectName" SortExpression="subjectName" /> 
      <asp:BoundField DataField="studentID" HeaderText="studentID" SortExpression="studentID" /> 
      <asp:BoundField DataField="supervisorID" HeaderText="supervisorID" SortExpression="supervisorID" /> 
      <asp:BoundField DataField="startDate" HeaderText="startDate" SortExpression="startDate" /> 
      <asp:BoundField DataField="dueDate" HeaderText="dueDate" SortExpression="dueDate" /> 
      <asp:CommandField ShowInsertButton="True" /> 
</Fields> 

ответ

1

Проверьте свой формат PC Дата и введите дату же формате, в установленный срок, если ввод времени даты динамически затем использовать как этот

DateTime.Now.ToString(yyyy-MM-dd) 

здесь гггг -MM-dd - это мой формат даты, введите свой формат в этом и это текущая дата, вы можете использовать его на нужную дату.

+0

Спасибо! Как я могу получить значение filedate с типом timedate в C# code-behind? – Poorya

+0

Я не понимаю, что вы хотите, можете ли вы рассказать об этом больше? –

2

Лучше использовать стандартный нейтральный формат независимо от любых региональных, языковых настроек.

Используйте следующий формат для даты и времени. Если вы вводите ваш даты и времени в формате неразделенного или ISO 8601 будет показано ниже, то вы не должны беспокоиться о каких-либо конфигурации/настроек:

Unseparated = 'yyyymmdd hh:mm:ss' 
ISO 8601 = 'yyyy-mm-ddThh:mm:ss' 

изофермионного формат 8601 имеет преимущество определяется в международном стандарте , И вы можете передать этот формат, используя ToString() метод, при обработке значений даты и времени:

lblDateTime.Text = (DateTime.UtcNow.ToString("yyyy-MM-ddTHH:mm:ss")); 

Это получили различные преимущества, поскольку он не должен проверить настройки/изменения операционной системы, серверов баз данных ... Продолжить reading here.