2011-12-21 2 views
0

У меня есть исследование о функции «Data Application Application Block» в EntLib. Я нахожу некоторые коды:Новая функция в .NET Framework?

public static class MapBuilder<TResult> where TResult : new() 
{ 
    //... 
} 

Я не понимаю, о смысле декларирования этого класса при использовании «где TResult: новые()». Я думаю, что это новая функция в .NET Framework для объявления класса. Пожалуйста, дайте мне документ или ссылку, чтобы объяснить эту функцию. Благодарю.

ответ

6

Это ограничение типа типового типа. Это было с момента введения дженериков в .net 2.0.

Constraints on Type Parameters (MSDN)

Конкретное ограничение вы упоминали означает только класс с конструктором публичного без параметров может быть использован в качестве типа TResult.


Смотрите также: Generics (MSDN)

1

where TResult : new() добавляет параметр constraint on the generic типа (TResult). Аргумент типа должен иметь конструктор без параметров.

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