C# convertit l'objet de tableau de type T, où T est un tableau?

Ce serait vraiment bien si je pouvais obtenir un objet à un tableau de conversion de travail.

Suit:

  1. On se passer d'un tableau à partir d'une source externe. Le tableau est encadré dans un objet. Généralement l'objet est un int[] ou double[], mais normalement, nous voulons double[].
  2. Convertir un tableau de Type T.
  3. retour de la conversion de type.

Pour commencer, cela fonctionne bien

double[] r=Array.ConvertAll<int,double>((int[])o,Convert.ToDouble)

mais ce n'est pas (à supposer que T est le "double") par exemple, le double[] R=getValue(o);

public T[] getValue<T>(object o){
//... some logic...
return (T[])Array.ConvertAll<int,double>((int[])o,Convert.ToDouble)

Est-il lorsque la contrainte qui peut être utilisé? Tableau est un "Objet", on ne peut donc pas l'utiliser comme une contrainte.

Est-ce possible dans .net sans avoir recours à l'-t-IL? Est-il possible si nous ne recourir à l'-t-IL?

grâce,
-Steven

  • Tu veux dire quoi par "le recours à l'IL"? Avez-vous l'intention d'écrire personnalisé IL code pour contourner ce problème?