2011-04-18 4 views

Respuesta

8

Sí, es bastante similar a Tuple de .NET 4.0, pero se remonta a .NET 1.0 y ASP.NET 1.0 en particular. Se utiliza principalmente en ViewState serialization:

la clase de página contiene una SavePageViewState(), que se invoca durante la etapa de guardar el estado de vista del ciclo de vida de la página. El método SavePageViewState() comienza creando un Triplet que contiene los siguientes tres elementos:

  1. código hash de la página. Este código hash se utiliza para garantizar que el estado de vista no se haya # mezclado con las devoluciones. Hablaremos más sobre el hashing del estado de vista en la sección "Ver el estado y las implicaciones de seguridad".
  2. El estado de vista colectiva de la jerarquía de control Page.
  3. Un ArrayList controles en la jerarquía de control que deben invocarse explícitamente por la clase de página durante la etapa de evento de devolución de subida del ciclo de vida.

Hay también su hermano menor llamado Pair.

No hay absolutamente ninguna razón por la que deba preocuparse por estas clases o de lo contrario se producirá un lío impío.

+0

+1 "es más o menos como Tuple", excepto que Triplet tiene un tipo débil, Tuple usa genéricos y está muy tipado. Acepto que debes ignorar a menos que desarrolles controles personalizados de ASP.NET que se serialicen en ViewState. – Joe

+0

@Joe De ahí mi comentario sarcástico sobre el desorden sin tipo. –

+0

¡Gracias por la respuesta detallada e informada! –

1

Parece que tiene un objeto más que un par. Lo usa cuando necesita devolver exactamente tres elementos.

C# y Java son diferentes de Python, que convertirá múltiples valores devueltos en una tupla.

Una Triple me suena como una tupla, una que tiene exactamente tres elementos.

Cuestiones relacionadas