Home > ASP.NET MVC > Problems with Asp.Net Web Forms

Problems with Asp.Net Web Forms

Asp.Net web form was really a great idea. It invented a new way of web development which was quite similar to desktop application development. So it was very much effective for the desktop application developer to switch into web development. Just open a new web project, dragging the controls and making the layouts with the controls moving through mouse one can easily start web development without proper knowledge of HTTP protocol.

But over the time of development with asp.net web forms some shortcomings identified which causes a lot of performance hampers. Here I described some shortcomings identified.

View State: Asp.net web forms maintain its state across request with view state. Which causes a large block of data to be transferred between server and client with each and every request, can even be larger than the page original size. Developer sometimes store heavy object like data table into the view state which causes the view state to be more weighted.

Page life cycle: The mechanism for connecting client-side events with server-side
event handler code, part of the page life cycle, can be extraordinarily complicated
and delicate. Few developers have success manipulating the control hierarchy at
runtime without getting View State errors or finding that some event handlers
mysteriously fail to execute.

Limited control over HTML: Server controls render themselves as HTML, but not
necessarily the HTML you want. Prior to ASP.NET 4, the HTML output usually
failed to comply with web standards or make good use of Cascading Style Sheets
(CSS), and server controls generated unpredictable and complex ID values that are
hard to access using JavaScript. These problems are reduced in ASP.NET 4, but it
can still be tricky to get the HTML you expect.

Leaky abstraction: Web Forms tries to hide away HTML and HTTP wherever
possible. As you try to implement custom behaviors, you frequently fall out of the
abstraction, which forces you to reverse-engineer the postback event mechanism
or perform obtuse acts to make it generate the desired HTML. Plus, all this
abstraction can act as a frustrating barrier for competent web developers.

Low testability: The designers of ASP.NET could not have anticipated that
automated testing would become an essential component of software
development. Not surprisingly, the tightly coupled architecture they designed is
unsuitable for unit testing. Integration testing can be a challenge, too.

The most recent release, ASP.NET 4, produces more predictable and standardscompliant
HTML markup, but many of the intrinsic limitations remain.

Categories: ASP.NET MVC
  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: