2011-10-03 16 views
5

prostu zastanawiasz się, czy jest łatwym sposobem, aby wiedzieć, ile elementy są zawarte w klasie krotkaliczba elementów w krotce <...>

np.

var a = new Tuple<int,int>(1,2); 

ale ile elementów tam jest? Być może nie obchodzi nas, czy spróbujemy użyć jako słowa kluczowego

var a1 = a as Tuple<int> 
if(a1!=null) 

var a2 = a as Tuple<int,int> 
if(a2!=null) 

Zaraz po krótkim sprzęcie zwrotnym. Czy wielu ludzi używa Tuple?

+0

Czasami używam Tuple, ale ponieważ parametry Tuple są nienazwane wolę używać anonimowych typów, kiedy mogę zachować użycie jednej metody. Większość razy używam krotki w połączeniu z ['Enumerable.Zip'] (http://msdn.microsoft.com/en-us/library/dd267698.aspx). –

+1

W jakim scenariuszu otrzymujesz Tupple i nie znasz jego typu? Czy piszesz kod 'dynamic'? – Kobi

+1

Znam rodzaje, ale typ nie mówi mi intencji. 'new {StockCount = 4, BackOrders = 5,}' jest o wiele bardziej intuicyjny niż 'Tuple.Create (4, 5)'. –

Odpowiedz

12
var a = new Tuple<int, int>(1, 2); 
var aType = a.GetType(); 
var numberOfGenericParameters = aType.GetGenericArguments().Length; 
Powiązane problemy