不能在此上下文中调用监视窗口中方法的求值

本文关键字:方法 窗口 调用 上下文 不能 监视 | 更新日期: 2023-09-27 18:04:32

我试图在观察窗口中查看集合中某些对象的DateTimeOffset值。所以我输入:

collection.Select(v => v.CreatedAt.ToString("O"))

然而,尝试计算此值会产生一个错误:

方法System. linq . systemcore_enumerabledebugview ' 1的求值[[System. linq . systemcore_enumerabledebugview]String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]。get_Items需要调用System.Globalization.GregorianCalendar方法。

我本可以指定v.CreatedAt,但我对毫秒也感兴趣,所以我使用O格式。仅仅调用ToString()也会产生同样的错误。

所以我想知道错误消息中的"此上下文"是什么,是否有机会扩展此上下文以使其成为可能?

不能在此上下文中调用监视窗口中方法的求值

我想知道什么是"this context"在错误消息中,和为是否有机会扩展这一背景以使其成为可能?

似乎应该指定文化,试试:

System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("en-US");
collection.Select(v => string.Format(culture,"{0:D}",v.CreatedAt));

对于IQueryable类型的collection,只能在投影内部调用有限数量的函数,因此在

之前调用ToList():
collection.ToList().Select(v => string.Format(culture, "{0:D}",v.CreatedAt));