Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用列表上的c foreach检查默认日期值_C#_Aspose Cells - Fatal编程技术网

C# 使用列表上的c foreach检查默认日期值

C# 使用列表上的c foreach检查默认日期值,c#,aspose-cells,C#,Aspose Cells,我最初希望使用Linq qry快速选择某些记录,这些记录与默认日期条件01/01/0001匹配- 然后将这些记录更新为空值。然而,由于这些返回的记录只有get,这意味着它们是只读的,因为我使用的是Linq 因此,我能想到的最好方法是c foreach,它将捕获默认日期并设置为Null,即我正在通过Aspose.cells导出到Excel,因此我需要这些单元格值为空: foreach (myExportClass rec in myRecords) { if (rec.myDate ==

我最初希望使用Linq qry快速选择某些记录,这些记录与默认日期条件01/01/0001匹配-

然后将这些记录更新为空值。然而,由于这些返回的记录只有get,这意味着它们是只读的,因为我使用的是Linq

因此,我能想到的最好方法是c foreach,它将捕获默认日期并设置为Null,即我正在通过Aspose.cells导出到Excel,因此我需要这些单元格值为空:

foreach (myExportClass rec in myRecords)
{
    if (rec.myDate == System.DateTime.MinValue)
    {
        rec.myDate = null;
    }
};
好的,这是可行的,并将所需的空值导出到一个空白单元格中

然而,问题是:我能找到一种更有效的方法来处理这个默认日期场景吗?在我看来,如果有几千条记录回来,foreach可能会浪费资源

仅供参考:这些记录是以这种方式从后端返回的,所以我需要用c语言处理


提前感谢

您希望foreach使用哪些您的情况实际上不需要的资源?关于您提议的foreach,有两个问题:1 myObj comming来自哪里?是循环变量吗?在这种情况下,您应该将其重命名为rec或viceversa。2您在找到第一个默认日期后中断,即退出循环,是否正确?这样,您只需修复第一个…@BurnsBA除非myDate计算属性getter的成本很高,否则这几乎肯定会比较慢。@zoharpeld这样做会解决什么问题?代码甚至不比问题中的代码短,也没有更好的性能。@BurnsBA您管理线程的开销将比单一日期相等性比较要昂贵得多,而且很少是赋值。在这两种情况下,序列的枚举都将以串行方式进行,因为只能从单个线程安全地访问底层集合。除非同时完成的实际工作是昂贵的,否则情况就不是这样了,除非myDate是一个昂贵的财产获取者,它需要更多的时间,而不是更少的时间。你希望foreach使用什么资源,而你的情况实际上并不需要这些资源?关于你提议的foreach,有两个问题:1 myObj从哪里来?是循环变量吗?在这种情况下,您应该将其重命名为rec或viceversa。2您在找到第一个默认日期后中断,即退出循环,是否正确?这样,您只需修复第一个…@BurnsBA除非myDate计算属性getter的成本很高,否则这几乎肯定会比较慢。@zoharpeld这样做会解决什么问题?代码甚至不比问题中的代码短,也没有更好的性能。@BurnsBA您管理线程的开销将比单一日期相等性比较要昂贵得多,而且很少是赋值。在这两种情况下,序列的枚举都将以串行方式进行,因为只能从单个线程安全地访问底层集合。除非同时进行的实际工作非常昂贵,而这里的情况并非如此,除非myDate是一个花费更多时间而不是更少时间的昂贵的属性获取工具。
foreach (myExportClass rec in myRecords)
{
    if (rec.myDate == System.DateTime.MinValue)
    {
        rec.myDate = null;
    }
};