Я новичок в React, и я использовал этот указатель даты и использовал следующий код
class Example extends React.Component {
constructor(props) {
super(props);
this.state = {
startDate: new Date()
};
this.handleChange = this.handleChange.bind(this);
}
handleChange(date) {
this.setState({
startDate: date
});
}
render() {
return (
<DatePicker
selected={this.state.startDate}
onChange={this.handleChange}
/>
);
}
}
Определение смены рукоятки дано ниже
handleChange(date) {
this.setState({
startDate: date
});
}
После этого я конвертировал эту дату в формат, который мне нужен в моей программе
var dateformat = (new Intl.DateTimeFormat('en-US',
{ year: 'numeric', month: '2-digit', day: '2-digit',
hour: '2-digit', minute: '2-digit', second: '2-digit' }).format(this.state.startDate));
Иногда выбирается правильная дата. Но большую часть времени он возвращает 01-01-0001 12:00:00 AM дату и время по умолчанию.
В связи с этой датой ниже приведено исключение, которое я обычно получаю:
"System.Data.SqlTypes.SqlTypeException: переполнение SqlDateTime. Должно быть
с 01.01.1753 12:00:00 до 31.12.9999 23:59:59. \ r \ n в
System.Data.SqlTypes.SqlDateTime.FromTimeSpan (значение TimeSpan) \ r \ n в
System.Data.SqlTypes.SqlDateTime.FromDateTime (значение DateTime) \ r \ n в
System.Data.SqlTypes.SqlDateTime..ctor (значение DateTime) \ r \ n в
System.Data.SqlClient.MetaType.FromDateTime (DateTime dateTime, Byte
cb) \ r \ n в
System.Data.SqlClient.TdsParser.WriteUnterminatedValue (значение объекта,
Тип мета-типа, Байт-масштаб, Int32 actualLength, Int32 encodingByteSize,
Смещение Int32, TdsParserStateObject stateObj, Int32 paramSize, Boolean
isDataFeed) \ r \ n в
System.Data.SqlClient.TdsParser.TdsExecuteRPC (_SqlRPC [] rpcArray,
Тайм-аут Int32, логическое значение inSchema, запрос SqlNotificationRequest
NotificationRequest, TdsParserStateObject stateObj, Boolean
isCommandProc, логическая синхронизация, выполнение TaskCompletionSource 1 completion, Int32
startRpc, Int32 startParam)\r\n at
System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior
cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean
async, Int32 timeout, Task& task, Boolean asyncWrite, SqlDataReader
ds)\r\n at
System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior
cmdBehavior, RunBehavior runBehavior, Boolean returnStream,
TaskCompletionSource
1, тайм-аут Int32, задание и задача, логическое значение
asyncWrite, метод String) \ r \ n в
System.Data.SqlClient.SqlCommand.ExecuteReader (CommandBehavior
поведение) \ r \ n в
System.Data.SqlClient.SqlCommand.ExecuteDbDataReader (CommandBehavior
поведение) \ r \ n в System.Data.Common.DbCommand.ExecuteReader () \ r \ n
в
Microsoft.EntityFrameworkCore.Storage.Internal.RelationalCommand.Execute (IRelationalConnection
соединение, DbCommandMethod executeMethod, IReadOnlyDictionary 2
parameterValues)\r\n at
Microsoft.EntityFrameworkCore.Storage.Internal.RelationalCommand.ExecuteReader(IRelationalConnection
connection, IReadOnlyDictionary
2 параметрValues) \ r \ n в
Microsoft.EntityFrameworkCore.Update.ReaderModificationCommandBatch.Execute (IRelationalConnection
подключение) "
Может ли кто-нибудь помочь мне понять, где я делаю ошибку? Есть ли какая-либо ошибка в этом устройстве выбора даты? Пожалуйста, дайте мне решение этой проблемы.