gpt4 book ai didi

c# - 运算符 '==' 不能应用于类型 'System.DBNull' 和 'Int' 的操作数

转载 作者:太空宇宙 更新时间:2023-11-03 19:57:49 25 4
gpt4 key购买 nike

我在尝试与 Excel 文档建立连接以更改所有未填充行的颜色时收到此错误。

我已阅读错误日志,它指出我的错误在以下代码部分:

try
{
foreach (Excel.Range row in rows)
{
if (row.Cells.EntireRow.Interior.ColorIndex == -4142) //error is Here
{
row.Interior.Color = System.Drawing.Color.Red;
}
}
workbook.Save();
workbook.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}

Marshal.ReleaseComObject(workbook);
Marshal.ReleaseComObject(worksheet);
Marshal.ReleaseComObject(application);

有谁知道导致此错误的原因以及如何解决?

最佳答案

那是因为对象的数据类型是System.DBNull。您应该检查对象值类型并采取相应措施:

object objValue = row.Cells.EntireRow.Interior.ColorIndex;
if(objValue is System.DBNull) {
//
} else {
//
}

关于c# - 运算符 '==' 不能应用于类型 'System.DBNull' 和 'Int' 的操作数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31583467/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com