This is a question about the scope and lifetime of a variable. The variable "region" is the text of the program into which you can refer to the variable without any qualification, and the "life expectancy" is the duration for which the variable is valid.
In general, it is best to limit the scope of variables as much as possible. This greatly facilitates the explanation of the code.
In the above code example, there are three variables, and each of them is tied to the individual method in which they are displayed. This is a good thing. Assuming the method names are accurate, you can immediately see everything that happens to this value.
In contrast, if you increase the scope of a variable by making it a field on the page, then all methods on this page will have access to the variable. It would be difficult to determine where it is created, how it is mutated and what it is used for. This makes future application support difficult.
Therefore, my recommendation is to continue to do what you have done here when possible.
EDIT
In response to the clarification of the question:
Performance is inconclusive. You are talking about nanoseconds on a web server. Web applications are limited by network or Internet traffic. There will be no noticeable difference in performance with any of these options where the variable goes.
In general, performance is a matter of algorithms and data structures over large sets of objects. In such situations, when there are no large data structures, a person does not see any difference.
Code must be designed first to be correct, understandable, and maintained. Once this is done, performance will only be a problem if it proves to be a problem.
Other editing
If MyClass is a class , not a struct , then the three variables in the code that are of this type represent only the size of one link (32 or 64 bits, depending on the platform). The object to which they all belong is created only once in the above code example.