Skip to main content

View State in ASP.NET

The most significant difference between programming for the web and programming for the desktop is state management - how you are able to store information for the particular amount of time or one can say lifetime of your application.This information can be of any type or of any level of complexity.

In a desktop application there is  nothing to worry about storage because we have sufficient storage and can be used by only a user at a time but what about web application, there we are not sure about the users who make use of application (located at web server) at a time by stateless HTTP connection.So we have to do something in such a manner that our web application will be able to store as our desktop application works and that storage will be different for different users or one can say in the way the user wants.

PROBLEM OF STATE

In a windows application, users interact with the continuous running application.That is pretty simple and everything is done at single user level.But in web application things are different.Our aim is to make our web application as much as like that of desktop application.This is for what asp.net has state management concept.What happen when a user request a page from the internet.When the page is delivered, the connection is served and the server discard all the page objects from the memory.Simply says there is nothing about the page that the user get left on the server.This is beneficial because the server do not have to worry about the users to whom it delivers the page called stateless design.But what if a user information is stored on the server in some form like in the form of objects then it will be possible to store information as on desktop application but it lacks performance of the server.

VIEW STATE

View state is one of the most common way to store information in web application.View state uses a hidden field that asp.net automatically inserts in the finally rendered page of HTML.Its a perfect place to store information that used for multiple post backs in single web page.That means if the user redirects same page again and again and he wants that some information filled by him will not be erased so view state helps a lot.Common example to use view state is in sign up pages.

Using view state is very easy actually very very easy.The view state property of the page provides the current view state information.Like if you want to store something with view state then use following syntax:-

this.ViewState["bag"]=007;

Now in case you want to get that value again later.For that there is simple syntax too.

int counter;
counter=(int)this.ViewState["bag"];


Besides this ViewState is also the property of controls like textbox to retain the value store already in it.For example we have two textboxes one is HTML textbox and other is ASP.NET textbox.Fill both by same value and take one ASP.NET button.and press that button.You will see that on autopostback after pressing button the HTML textbox will become empty but the ASP.NET textbox still contains value as you filled before.So ViewState plays a great role to in saving the current state of object or control on the same page.

Comments

Popular posts from this blog

Export Doc,Access,Image,CSV,Excel,Pdf,XML,HTML,Text,Print of Gridview in Asp.net

First import itextsharp.dll in the solution and use three namespces (basically for pdf) using iTextSharp.text; using iTextSharp.text.pdf; using iTextSharp.text.html.simpleparser;          Then Use the following code :- on each button  click  protected void Page_Load(object sender, EventArgs e)         {             if (!Page.IsPostBack)             {                 BindGridDetails(GridView1);             }         }                 protected DataTable BindGridDetails(GridView GridView1)         {             DataTable dt = new DataTable();             dt.Columns.Add("Student_ID", typeof(Int32));             dt.Columns.Add("Student_Name", typeof(string));             dt.Columns.Add("Education", typeof(string));             dt.Columns.Add("City", typeof(string));             DataRow dtrow = dt.NewRow();             dtrow["Student_ID"] = 1;             dtrow["Student_Name"] = "Musakkhir";   

Ip Sec Internet Security Basic Structure

The IPsec suite is an  open standard . IPsec uses the following  protocols  to perform various functions: Authentication Headers (AH)  provide connectionless  integrity  and data origin  authentication  for IP  datagrams  and provides protection against  replay attacks . Encapsulating Security Payloads (ESP)  provide  confidentiality , data-origin  authentication , connectionless  integrity , an anti-replay service (a form of partial sequence integrity), and limited traffic-flow confidentiality. Security Associations (SA)  provide the bundle of algorithms and data that provide the parameters necessary to AH and/or ESP operations. The  Internet Security Association and Key Management Protocol  (ISAKMP) provides a framework for authentication and key exchange, with actual authenticated keying material provided either by manual configuration with pre-shared keys,  Internet Key Exchange  (IKE and IKEv2),  Kerberized Internet Negotiation of Keys  (KINK), or IPSECKEY  DNS records .

Advent of code 2022 day 22 part 1

  function main(input, input1) {     let grid = input.split( '\n' );     grid.shift();     // only in big input     for ( let i = 0 ; i < 100 ; i++) {         grid[i] = '                                                  ' + grid[i];     }     //console.log(grid[100])     grid = grid.map(x => x.split( '' ))     // find first left top allowed     let temppos = - 1 ;     grid[ 0 ].forEach((element, i) => {         if (temppos == - 1 && element == '.' ) {             temppos = i;         }     });     let initpos = new pos(temppos, 0 )     // console.log(initpos)     // make grid equal shape     let maxlength = 0 ;     grid.forEach(el => {         if (el.length > maxlength) {             maxlength = el.length         }     })     console.log(maxlength)     grid.forEach(el => {         if (el.length < maxlength) {             let diff = maxlength - el.length;             while (diff > 0 ) {                 di