istudent Ответов: 1

Как создать дату из времени (чч:мм) и привязать к объекту datetime?


In my ASP.Net MVC project I am using the TimePicker plugin to render time.


$.ajax({
  url: "/payroll/PostPayrollEmpSheet",
  type: "POST",
  data: {
    'ProjectId': $('.counterPayroll').data('projectid'),
    'PayrollEmployeeType': 1,
    'DayNumber': $('.counterPayroll').data('daynumber'),
    'EmployeeName': empName,
    'PreBreakClockIn': preBreakTimeClockIn,
    'PreBreakClockOut': preBreakTimeClockOut,
    'PostBreakClockIn': postBreakTimeClockIn,
    'PostBreakClockOut': postBreakTimeClockOut
  }
})


In my Action method in backend expects DateTime datatype. How do I parse hh:mm time to DateTime and send via AJAX?


Что я уже пробовал:

I tried to do something like this also:

'PreBreakClockIn': new Date('1970-01-01T' + preBreakTimeClockIn + 'Z'),
'PreBreakClockOut': new Date('1970-01-01T' + preBreakTimeClockOut + 'Z')

1 Ответов

Рейтинг:
0

phil.o

Вы могли бы использовать один из DateTime конструкторы строения:
Конструктор DateTime (Система) | Microsoft Docs[^]

Или, поскольку средство выбора даты и времени, скорее всего, вернет вам a TimeSpan, вы можете просто добавить его к указанной дате в 00:00:00. Вы можете добавить TimeSpan значение для a DateTime значение для получения нового DateTime.

// Assuming preBreakTimeClockIn, preBreakTimeClockOut, postBreakTimeClockIn and preBreakTimeClockOut are TimeSpan values
DateTime baseDate = DateTime.Today; // or any other relevant value
DateTime preIn = baseDate + preBreakTimeClockIn;
DateTime preOut = baseDate + preBreakTimeClockOut;
DateTime postIn = baseDate + postBreakTimeClockIn;
DateTime postOut = baseDate + postBreakTimeClockOut;


istudent

Когда я передавал значение временного интервала, я не мог отформатировать их для отображения, например, в 7:00 утра. Вот почему я должен был пойти с типом данных дата-время.

phil.o

Что значит, вы не смогли отформатировать? Что вы пробовали, и как это было неприемлемо?