After some more research and trial-and-error, I think I found a solution by using System.Collections.ArrayList
. However, this does not work with getting a value by index. To do so, I created a new class ComArrayList
that inherits from ArrayList
and adds new methods GetByIndex
and SetByIndex
.
COM Interop compatible collection:
public class ComArrayList : System.Collections.ArrayList {
public virtual object GetByIndex(int index) {
return base[index];
}
public virtual void SetByIndex(int index, object value) {
base[index] = value;
}
}
Updated .NET component MyLibrary.GetDepartments:
public ComArrayList GetDepartments() {
// return a list of Departments from the database
}
Updated ASP:
<h1>The third department</h1>
<%= departments.GetByIndex(2).Name %>