是否可以重载扩展方法?
我做了类似的事
public static ExcelWorksheet CreateSheet(this ExcelPackage thisPackage, List<Document> list)
{
ExcelWorksheet worksheet = thisPackage.Workbook.Worksheets.Add("Documents");
return worksheet;
}
public static ExcelWorksheet CreateSheet(this ExcelWorksheet thisPackage, List<Book> list)
{
ExcelWorksheet worksheet = thisPackage.Workbook.Worksheets.Add("Books");
return worksheet;
}
在这种情况下,它只识别第一种方法作为扩展方法,忽略第二种方法而没有任何编译器警告或错误。
答案 0 :(得分:2)
由于扩展方法位于不同的对象ExcelPackage
和ExcelWorksheet
,因此您不会在此处超载。重载扩展方法 可以接受。