Преобразовал какой-то код из VB.Net в С#, когда я столкнулся с этим, в некотором коде с использованием библиотеки Ionic Zip:
Dim zipEntry1 As ZipEntry = zipFile1.Entries(0)
Достаточно просто:
ZipEntry zipEntry1 = zipFile1.Entries[0];
Я получаю эту ошибку на С#:
Невозможно применить индексирование с [] к выражению типа '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];
}
}
}
Почему это происходит, и есть ли способ вокруг него?