正在将一些代码从 VB.Net 转换为 C#,当我遇到这个时,在一些使用 Ionic Zip 库的代码中:
Dim zipEntry1 As ZipEntry = zipFile1.Entries(0)
很简单:
ZipEntry zipEntry1 = zipFile1.Entries[0];
我在 C# 上收到此错误:
无法使用 [] 将索引应用于“System.Collections.Generic.ICollection”类型的表达式
两者都使用相同版本的 DLL,两者zipFile1.Entries
都是通用的ICollection
.
我已经在 VB.Net 上测试了以下内容,并且成功构建:
Option Strict On
Option Explicit On
Imports Ionic.Zip
Module Module1
Sub Main()
Dim zipFile1 = ZipFile.Read("C:\test")
Dim zipEntry = zipFile1.Entries(0)
End Sub
End Module
这不会建立:
using Ionic.Zip;
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
var zipFile1 = ZipFile.Read(@"C:\test");
var zipEntry = zipFile1.Entries[0];
}
}
}
为什么会发生这种情况,有没有办法解决它?