2009-06-12 14 views
2

私はfolowingのような反射から作成された型のオブジェクトの配列を作成するためにリフレクションを使用しようとしています:C#のリフレクションオブジェクト[]問題

Client[] newArray = new Client[] {client1, client2}; 

私は何とかClientオブジェクト型はそうオブジェクトを作成するために取得する必要がありますそれは通過することができます。

ご協力いただければ幸いです。

乾杯、 ロブ

object clientObject = testAssembly.CreateInstance(".Testing_Automation.Client");   
Type client = testAssembly.GetType(".Testing_Automation.Client"); 

// Create Client Object Array 

に渡す:あなたはArray.CreateInstanceメソッドを使用する必要があり

public Appointment(IEnumerable<Client> client, string time) 
+0

コンパイル時に知らないタイプにキャストするのは難しいです。 IEnumerable の変換は、実行するのが難しいものになります。 –

答えて

6

:配列からIEnumerable<Client>を取得するには

Array arr = Array.CreateInstance(client, lengthOfArray); 
arr.SetValue(client1, 0); // Fill in the array... 
arr.SetValue(client2, 1); 

を、あなたは(IEnumerable<Client>)arrを使用することができますあなたが0123を知っているならはコンパイル時にタイプします。そうでない場合は、そのメソッド呼び出しの可能性に関する詳細情報を投稿する必要があります。