// эти две даты привязаны к календарю,
// по умолчанию сегодня, а потом позже, они берут значение, что выбрал пользователь
// и меняются, все работает и когда меняются значение присваивается
public DateTime? MinDate { get; set; } = DateTime.Now;
public DateTime? MaxDate { get; set; } = DateTime.Now;
// вот таким образом
public async Task ValueChangeHandlerAsync(RangePickerEventArgs<DateTime?> args)
{
if ((args.Date1 != null) && (args.Date2 != null))
{
MinDate = args.Date1;
MaxDate = args.Date2;
}
//And when user UNfocused, i call some function with TWO dates value set
if ((MinDate != null) & (MaxDate != null))
{
// тут я отправляю в LocalStorage две даты, ниже код, заходит сюда, только если обе даты // инитциализированны
}
}
我在 LocalStorage 中保存两个日期并收到错误
The JSON value could not be converted to System.DateTime. Path: $ | LineNumber: 0 | BytePositionInLine: 4.
我尝试转换,我在开放空间找到了一个例子🔽
DateTime UpdatedTime1 = MinDate ?? DateTime.Now;
DateTime UpdatedTime2 = MaxDate ?? DateTime.Now;
LocalStorageServices.SetSessionDate("date1", UpdatedTime1);
LocalStorageServices.SetSessionDate("date2", UpdatedTime2);
仍然是错误,我也尝试立即DateTime?发送
Null object cannot be converted to a value type.
这是发送方法,我试了DateTime一下DateTime?
public async void SetSessionDate(string title, DateTime? valeur)
{
try
{
await WaitForReference();
await _accessorJsRef.Value.InvokeAsync<DateTime?>("set", title, valeur);
}
catch (Exception ex)
{
Log.WriteLine($"SetSessionDate({title}, {valeur}) : " + ex.Message);
}
}
这js
export function set(key, value) {
window.localStorage.setItem(key, value);
}
我也用过(只是直观,但是没有这个功能,出现错误)
export function setDate(key, value) {
window.localStorage.setDate(key, value);
}
必要:在LocalStorage中保存两个日期
- 结果,日期被保存了,但它们总是陷入
catch(也许这就是常态?)
这里,
<DateTime?>根据方法签名,this就是返回值。但 JS 方法不返回任何内容
undefined。而你正试图将DateTime?这种“无”转化为有。这就是为什么它是一个例外。您甚至可以添加反馈
那么挑战可能是这样的
我也将我的解决方案留在这里:
DateTime MyDate = DateNullable ?? DateTime.Now;因此,MyDate 可以以需要严格非 Nullable 的格式使用,
但在你的情况下,但在我的情况下,这不是 DateTime 的问题?,而是存储通常存储字符串的事实......为了考虑到位置,我将存储一个数字(第一个解决方案是一个字符串,但如果时区不同等,可能会出现冲突),它总是可以转换为日期。
github