What is the Triplet class used for? Is it related to Tuples?

So I just learnt about the Triplet class. I have no experience with ASP.NET, only the core .NET Framework.

Can someone explain to me where/why the Triplet class exists? Is it like a Tuple?

Answers:

Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.

Method 1

Yes, it’s pretty much like Tuple from .NET 4.0, but dates back to .NET 1.0 and ASP.NET 1.0 in particular. It’s primarily used in ViewState serialization:

The Page class contains a SavePageViewState(), which is invoked during the page life cycle’s save view state stage. The SavePageViewState() method starts by creating a Triplet that contains the following three items:

  1. The page’s hash code. This hash code is used to ensure that the view state hasn’t been #tampered with between postbacks. We’ll talk more about view state hashing in the “View State and Security Implications” section.
  2. The collective view state of the Page‘s control hierarchy.
  3. An ArrayList of controls in the control hierarchy that need to be explicitly invoked by the page class during the raise postback event stage of the life cycle.

There’s also its’ younger brother called Pair.

There’s absolutely no reason you should even bother about these classes or else an unholy untyped mess will ensue.

Method 2

Sounds like it’s got one more object than a Pair. You use it when you need to return exactly three items.

C# and Java are different from Python, which will convert multiple return values into a tuple.

A Triple does sound like a tuple to me – one that has exactly three items.


All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x