我有这样的.NET 4.0代码:转换.NET 4.0语法OfType到.NET 3.5
var myTable = tables[1];
myTable = tables.Item["Table1"];
myTable = tables.OfType<Excel.ListObject>().FirstOrDefault(t => t.Name == "Table1");
我试图使用.NET 3.5编译,得到一堆错误:
错误23属性,索引器或事件'Item'不受 语言支持;尝试直接调用访问方法 'Microsoft.Office.Interop.Excel.ListObjects.get_Item(对象)'
和
错误24 'Microsoft.Office.Interop.Excel.ListObjects' 不包含 关于“OfType”和最好的扩展方法过载 “System.Linq.Queryable.OfType(System.Linq.IQueryable)”的定义具有 一些无效参数
和
错误25实例参数:无法从 'Microsoft.Office.Interop.Excel.ListObjects' 转换为 'System.Linq.IQueryable'
能否请您指导我正是这些错误意味着我可以尝试将其转换为.NET 3.5?
非常感谢您的建议。
有没有简单的解决方法。 ListObjects接口有点摸索,它有一个Item属性,它不是接口的默认属性。 MSDN文章中默认的名称为_Default。 C#版本3和更早版本仅支持一个索引器。 ListObjects错误。您必须显式使用get_Item(),就像错误消息所述。这打破了Linq。 –