I've created a class called listItem and the following list:
List<listItem> myList = new List<listItem>();
At some point in my code, I want to convert it to an array, thereby using:
listItem[] myArray = myList.ToArray();
Unfortunately, this doesn't work, and I get this error message:
Cannot convert [...] listItem[] to [...] List<listItem>
I tried to figure this out, but very unsuccessfully...
Thanks in advance.
EDIT: My bad, the first code line I wrote was indeed mistyped!
Actually, all the code above works pretty well. My error was due to the fact that my function:
List<listItem> myFunction()
returned myArray, hence the conversion problem... It is now fixed. :)
Thank you all for your answers.
This is the error (as pointed out from Darkshadw and Jon Skeet)
listItem myList = new List<listItem>();
You are assigning the value of a List to a listItem.
Replace it with
List<listItem> myList = new List<listItem>();
to create a list of listItem. Then
listItem[] myArray = myList.ToArray();
will work.
have you tried
listItem[] myArray = myList.ToArray(new listItem[]{});
in Java it works, im not sure in c#
string[] s = myList.ToArray();
Considering myList is list of string
来源:https://stackoverflow.com/questions/9990378/converting-a-list-to-an-array-with-toarray