2012-05-15 2 views
1

дано определение, как такКак вернуть Generic T.ToString()

public class KeyValueItem<K,V> 
{ 
    public K Key { get; set; } 
    public V Value { get; set; } 

    public override string ToString() 
    { 
     return T.ToString(); // does not compile 
    } 
} 

Как я переопределить ToString() и вернуть V.ToString();

+3

'return Value.ToString()'? – birryree

ответ

10

Ну, похоже, что вы хотите использовать:

public class KeyValueItem<K,V> 
{ 
    public K Key { get; set; } 
    public V Value { get; set; } 

    public override string ToString() 
    { 
     return this.Value.ToString(); // does compile 
    } 
} 

Почему? Поскольку у вас нет T нигде, а K/V - это типы, а не экземпляр типа.

Смежные вопросы