不能在此上下文中调用监视窗口中方法的求值
本文关键字:方法 窗口 调用 上下文 不能 监视 | 更新日期: 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));