Konvertieren Sie fullcalender select event start datetime in C#
Posted: 29 Dec 2024, 07:47
https://fullcalendar.io/ Ereignis auswählen spart Startzeit mithilfe des Codes aus der Antwort So übergeben Sie tstzrange an postgres
Javascript:
html:
selectionInfo.start enthält lokalisierte Werte wie
Mon. 30. Dezember 2024 09:30:00 GMT+0200 (Ida -Euroopa standardaeg)
Der .NET 9 MVC-Controller analysiert es mit
DateTimeOffset.Parse löst Ausnahme aus:
Versucht auch ohne
locale: 'ee',
Einstellung, aber der Startwert liegt immer noch in der EE-Kultur. ee ist Browserkultur. Fullcalendar gibt „selectionInfo.start“ immer im Browserkulturformat zurück.
Im Controller versucht, DateTime.Parse zu verwenden:
Ausnahme ist die gleiche.
Wie erzwinge ich, dass fullcalendar die ausgewählte Startzeit im invarianten Kulturformat zurückgibt?
Oder: Benutzer haben unterschiedliche Kulturen im Browser. Wie analysiere ich startselectionInfo.start, das von fullcalendar zurückgegeben wird?
Javascript:
Code: Select all
document.addEventListener('DOMContentLoaded', function() {
const calOpts = {
locale: 'ee',
slotDuration: '00:15:00',
slotLabelInterval: '00:15',
allDaySlot: false,
selectConstraint: 'businessHours',
select : function( selectionInfo ) {
document.getElementById('start').value = selectionInfo.start
},
selectable: true,
events: { url: 'api/fullcalendar' }
}
const calendarEl = document.getElementById('calendar')
calendar = new FullCalendar.Calendar(calendarEl, calOpts)
calendar.render()
})
Code: Select all
Mon. 30. Dezember 2024 09:30:00 GMT+0200 (Ida -Euroopa standardaeg)
Der .NET 9 MVC-Controller analysiert es mit
Code: Select all
[HttpPost]
public async Task Kinnitatud(string start) {
DateTime algus = DateTimeOffset.Parse(start,new CultureInfo("ee")).UtcDateTime;
}
Code: Select all
String 'Mon Dec 30 2024 09:30:00 GMT+0200 (Ida-Euroopa standardaeg)' was not recognized as a valid DateTime.
locale: 'ee',
Einstellung, aber der Startwert liegt immer noch in der EE-Kultur. ee ist Browserkultur. Fullcalendar gibt „selectionInfo.start“ immer im Browserkulturformat zurück.
Im Controller versucht, DateTime.Parse zu verwenden:
Code: Select all
DateTime algus = DateTime.Parse(start, new CultureInfo("ee")).ToUniversalTime()
Wie erzwinge ich, dass fullcalendar die ausgewählte Startzeit im invarianten Kulturformat zurückgibt?
Oder: Benutzer haben unterschiedliche Kulturen im Browser. Wie analysiere ich startselectionInfo.start, das von fullcalendar zurückgegeben wird?