Я пытаюсь использовать отражение для создания массива объектов типа, созданного из отражения, как показано ниже:
Client[] newArray = new Client[] {client1, client2};
Мне нужно как-то получить тип объекта Client
для создания объекта, чтобы его можно было передать.
Любая помощь будет принята с благодарностью.
Cheers, Rob
object clientObject = testAssembly.CreateInstance(".Testing_Automation.Client");
Type client = testAssembly.GetType(".Testing_Automation.Client");
// Create Client Object Array
Переход к:
public Appointment(IEnumerable<Client> client, string time)
Вам следует использовать метод Array.CreateInstance
:
Array arr = Array.CreateInstance(client, lengthOfArray);
arr.SetValue(client1, 0); // Fill in the array...
arr.SetValue(client2, 1);
Чтобы получить IEnumerable<Client>
из массива, вы можете использовать (IEnumerable<Client>)arr
, если вы знаете тип Client
во время компиляции. Если вы этого не сделаете, то, скорее всего, вы должны разместить больше информации о возможностях вызова этого метода.