C# 无法显式调用运算符或访问器的Win Forms编译错误
我正在使用EPPlus库进行我的C#Win forms项目,但遇到以下错误: “ExcelPackage.工作簿.get”:无法显式调用运算符或访问器 在这行代码中:(get_工作簿和get_名称是引发错误的对象)C# 无法显式调用运算符或访问器的Win Forms编译错误,c#,epplus,C#,Epplus,我正在使用EPPlus库进行我的C#Win forms项目,但遇到以下错误: “ExcelPackage.工作簿.get”:无法显式调用运算符或访问器 在这行代码中:(get_工作簿和get_名称是引发错误的对象) str=str.Trim(新字符[]{'\'})。替换(“\\”,”)。替换(“/”,”)。替换(“*”,”)。替换(“[”,”)。替换(“:”,”)。替换(“?”,”); 使用(ExcelPackage ExcelPackage=新的ExcelPackage(新文件信息(保存文件)
str=str.Trim(新字符[]{'\'})。替换(“\\”,”)。替换(“/”,”)。替换(“*”,”)。替换(“[”,”)。替换(“:”,”)。替换(“?”,”);
使用(ExcelPackage ExcelPackage=新的ExcelPackage(新文件信息(保存文件)))
{
如果(excelPackage.get_工作簿().get_工作表().Any((Excel工作表w)=>w.get_名称()==str))
{
excelPackage.get_工作簿().get_工作表().Delete(str);
}
}
我打错了什么电话,应该如何更新?不要以这种方式访问属性。在ePlus中,您可以只参考
工作簿
和工作表
属性。此外,我认为您在尝试使用字符串删除工作表时会遇到问题
假设最多有一个工作表与名称完全匹配,请尝试以下操作:
var matchingWorksheet = excelPackage.Workbook.Worksheets.SingleOrDefault(w => w.Name == str);
if (matchingWorksheet != null)
{
excelPackage.Workbook.Worksheets.Delete(matchingWorksheet);
}
可能重复的
var matchingWorksheet = excelPackage.Workbook.Worksheets.SingleOrDefault(w => w.Name == str);
if (matchingWorksheet != null)
{
excelPackage.Workbook.Worksheets.Delete(matchingWorksheet);
}