I will try to answer the first part of your question:
1. If I disable viewstate for complete page, then what will happened? How can then I persist the data? for eg if I have a signup page and it has ten fields, I disable viewState of the page, then How can I persist data?
Lets start by a very simple example. Create a web page and add a textbox and a button to post the page. Disable the ViewState for the page and then run the page in debug mode. Add some text in the texbox and click the button to post the page. In the page load, check the value of the textbox. You may be surprised to see that the value you entered is available even though the ViewState was disabled.
So it's important to understand what ViewState stores. Usually the form data is available in the page even with ViewState disabled. ViewState is useful in determining the changed data. Another case in our example where we would have needed ViewState is if you would have set ForeColor property (and many such which are available with ASP.NET TextBox control) of the textbox.
It's usually recommended to disable the ViewState if you are not using it as it makes the page heavier.
MSDN has a very comprehensive article on ViewState here:
Understanding ASP.NET View State[
^].
Go through it and most of your doubts will be cleared.
You also ask how do we persist data otherwise. ViewState is a client side state management technique in asp.net. There are other client side mechanism of storing data (like hidden variable, cookies, querystring etc). There are server side techniques as well. Again, there is a very nice article on MSDN for the same which will help you understand state management very well -
ASP.NET State Management Recommendations[
^]
I won't be answer the 2nd part as I am new to MVC as well.
Hope that helps!