Il new()
vincolo significa che il parametro generico particolare è richiesto di avere un costruttore di default (i. E. Un costruttore senza parametri).
Lo scopo di questo è in genere quello di consentire di scrivere in modo sicuro nuove istanze di tipi di parametri generici senza ricorrere a reflection/Activator.CreateInstance.
Ad esempio:
public T Create<T>() where T : new()
{
// allowed because of the new() constraint
return new T();
}
Per ulteriori informazioni, visitate http://msdn.microsoft.com/en-us/library/sd2w2ew5%28v=vs.80%29.aspx.
Per quanto riguarda il termine di ricerca di Google, proverei "C# new() constraint".
ricerca per vincoli sui parametri tipo. ecco il link http://msdn.microsoft.com/en-us/library/d5x73970.aspx – qwr
Duplicato di [C# code confusion of where clause] (http://stackoverflow.com/q/5461963), che ho trovato cercando SO per [\ [C# \] generico dove nuovo] (http://stackoverflow.com/search?q=%5Bc%23%5D+generic+where+new). Inoltre, [Cosa fa new() in 'where T: new()'] (http://stackoverflow.com/q/1085434) che SO mostra nella barra laterale Domande correlate. –