Я отправляю объект, содержащий две даты из Angular 6, в метод ASP.NET Core Web API.Даты являются правильными на стороне Angular, но когда они получены в методе Web API, они на один день отстают от того, что они отправили из приложения Angular.
startSprint(id: number, SprintDates: any): Observable<any> {
this.sprintId = id.toString();
return this.http.patch<any>(this.baseUrl + 'setSprintDates/' + this.sprintId,
SprintDates);
}
Приведенный выше метод отправляет объект даты в метод Web API.Приведенный ниже метод представляет собой метод веб-API, который получает этот объект, но когда я отлаживаю и наведите курсор на объект sprintDatesDto
, полученные значения на один день отстают от того, что они были при отправке из Angular.
[HttpPatch("setSprintDates/{sprintId}")]
public async Task<IActionResult> SetSprintDates(string sprintId, SprintDatesDto sprintDatesDto)
{
// Business login related code
return StatusCode(200);
}
Это класс SprintDatesDto
:
namespace AgileFootPrints.API.Dtos
{
public class SprintDatesDto
{
public DateTime StartDate { get; set; }
public DateTime EndDate { get; set; }
}
}
Это объект, который я создал в угловом файле Typescript:
sprinDates = {
startDate: Date,
endDate: Date
};
Затем, в HTML-файле, я использовал ngModel дляпривязка к свойствам объекта sprintDates:
<div class="row">
<div class="col-md-7 w-100 ">
<mat-form-field class="example-full-width">
<input
matInput
[(ngModel)]="sprinDates.startDate"
[min]="minDate"
[max]="maxDate"
[matDatepicker]="startsAt"
placeholder="Starts At"
/>
<mat-datepicker-toggle matSuffix [for]="startsAt"></mat-datepicker-toggle>
<mat-datepicker #startsAt></mat-datepicker>
</mat-form-field>
</div>
<br />
</div>
<div class="row">
<div class="col-md-7 w-100">
<mat-form-field class="example-full-width">
<input
[disabled]="sprinDates.startDate === undefined"
matInput
[(ngModel)]="sprinDates.endDate"
[min]="sprinDates.startDate"
[max]="maxDate"
[matDatepicker]="endsAt"
placeholder="Ends At"
/>
<mat-datepicker-toggle matSuffix [for]="endsAt"></mat-datepicker-toggle>
<mat-datepicker #endsAt></mat-datepicker>
</mat-form-field>
</div>
</div>