我有一个类型的对象ICollection
.什么是转换的最佳途径string[]
.
如何在.NET 2中完成?
如何在C#的后续版本中更清洁,也许在C#3中使用LINQ?
您可以使用以下代码段将其转换为普通数组:
string[] array = new string[collection.Count]; collection.CopyTo(array, 0);
那应该做的工作:)
如果您使用的是C#3.0和.Net framework 3.5,那么您应该能够:
ICollectioncol = new List () { "a","b"}; string[] colArr = col.ToArray();
当然,你必须"使用System.Linq;" 在文件的顶部
在(平凡的)情况下ICollection
,使用ToArray:
String[] GetArray(ICollectionmycoll) { return mycoll.ToArray (); }
编辑:使用.Net 2.0,你可以额外返回数组List
:
String[] GetArray(ICollectionmycoll) { List result = new List (mycoll); return result.ToArray(); }