<p>I have a object of type <code>ICollection&lt;string&gt;</code>.  What is the best way to convert to <code>string[]</code>.  </p>

<p>How can this be done in .NET 2?<BR>
How can this be done cleaner in later version of C#, perhaps using LINQ in C# 3?</p>

You could use the following snippet to convert it to an ordinary array:
```
```
string[] array = new string[collection.Count];
collection.CopyTo(array, 0);
```
```
That should do the job :)