将对象转换为ArrayList

时间:2018-11-19 14:44:31

标签: c# vb.net arraylist

在从vb .net到c#的转换中,我收到此错误“无法将对象隐式转换为ArrayList”(第一个没有激活“严格”选项:所有功能均已关闭)

Dim archivoLeido As ArrayList = parametrosPartirDatos(0)

有大量行的arrayList分配等于c#在arrayList中的位置

ArrayList archivoLeido = parametrosPartirDatos[0]//<--- this is a string type;

甚至将一个arraylist分配给另一个接收arraylist作为参数的方法: (ModificarCamposENR(arraylist,arraylist)

`parametrosPartirDatos[0] = EjecutarETL.ModificarCamposENR(parametrosPartirDatos[0], parametrosPartirDatos[17]);`

如何解决这些错误?

1 个答案:

答案 0 :(得分:3)

我感觉到您的VB中没有“严格启用选项”,并且会得到完全相同的错误。在VB中进行投射应如下所示:

Dim archivoLeido As ArrayList = CType(parametrosPartirDatos(0), ArrayList) 

在C#中,它看起来像这样:

ArrayList archivoLeido = (ArrayList)parametrosPartirDatos[0];

我强烈建议您使用List(Of T)。