am having a viewstate which pertains value like:
string temp;
ViewState[\"temp\"] = dc.ColumnName.ToString();
This returns weekdays like:
No, you can't. At least not without reflection, and you shouldn't be using reflection here. Variables in C# are a compile-time concept. (Even with reflection, it'll only work for fields, not for local variables.)
If you want a collection of values, use a collection... e.g. a List or a Dictionary. So for example, you could have a List (which is accessed by index) or a Dictionary which is accessed by string key ("monday", "tuesday" or whatever you want).
If you're only actually creating a single TextBox, what does it matter what the variable name is? Just use:
TextBox textBox = new TextBox();
// Do appropriate things with the TextBox, possibly using ViewState
The variable name just gives you a way of referring to the variable. That's all it's there for. The object you create doesn't know anything about which variables (if any) contain references to it.