嗨,我正在进行工作机器人项目,因为我在机器人状态服务中使用 StateClient 保存当前日期(2016-09-23T18:38:41)格式。在这里,当我使用 SetProperty() 方法保存日期值时,它工作正常,但是当我想使用 GetProperty() 方法获取值时,它给出了错误的日期格式,例如(1/1/0001 12:00: 00 点)。对于上述概念,我在我的项目中编写了以下代码行在此处输入代码
var result = new ValidateResult { IsValid = true, Value = message.Text };
DateTime? dt = DateTime.ParseExact(message.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture);
if (dt.Value.Date < DateTime.Now.Date)
{
await context.PostAsync("**Please enter a valid date like in the format DD/MM/YYY**" + " \r \n ");
result.IsValid = false;
}
else
{
TimeSpan ts = new TimeSpan(DateTime.Now.Hour, DateTime.Now.Minute, DateTime.Now.Second);
dt = dt.Value.Date + ts;
d = dt.Value.Date + ts;
result.Value = dt;
//saving the date format using SetProperty() using StateClient and BotData
BotData userData = await stateClient.BotState.GetUserDataAsync(message.ChannelId, message.From.Id);
userData.SetProperty<DateTime?>("dt", dt);-->Here i am saving the date format like (2016-09-23T18:38:41)
await stateClient.BotState.SetUserDataAsync(message.ChannelId, message.From.Id, userData);
await context.PostAsync("user message");
}
//Getting the data using GetProperty() using BotData
BotData userData = await stateClient.BotState.GetUserDataAsync (message.ChannelId, message.From.Id);
var date= userData.GetProperty<DateTime>("dt");-->here i am getting the date format is like(1/1/0001 12:00:00 AM)
请告诉我上面代码中的问题是什么,我该如何解决。