Wednesday, March 21, 2012

Question to the Ajax/ MS Team - UpdatePanels

There have been several posts that remained unresolved about why they were always getting FULL PostBacks after upgrading from RC versions to the Release Version. After reading the posts and doing a little testing - I discovered that merely dragging and dropping an UpdatePanel on a page - it defaults with UpdateMode = "Always".

That kinda does not make sense as the default should be towards the benefit of using Ajax - or in other words should always default to "Conditional" and I do believe that is a change between the RC and Release version.

The same goes for PageMethods - It should default to already enabled - like it did in the previous versions or at least on the docuementation site a left hand menu selection specifically for PageMethods - should annotate when clicked - PageMethods not enabled by default...

Alot of times as programmers while we may use the Designer mode - most of the times as we are building references do not popup to display all the defaults especially if there is an error on the page such as a missing /div tag etc...

But the main point it - strikes me odd from a usability standpoint why UpdateMode is defaulted to "Always"... I use VS Team Studio if that helps (and it has always had it quirks in the Ajax development scenarios...

None the less there mere fact it is defaulted to Always should be emphasized on the Docs site considering now everyone assumes that is the goto reference since it is no longer beta...

Hi,

the "Always" mode is not related with performing a full postback rather than a partial one. If an UpdatePanel has UpdateMode="Always", it will refresh its content even if the partial postback was triggered by a control that's not contained in the UpdatePanel, nor it's a trigger for that UpdatePanel.

If UpdateMode="Conditional", the UpdatePanel will refresh its content only if one of *its* children controls (if ChildrenAsTriggers="true") or triggers start the partial postback.


I believe that UpdateMode = "Always" has been the default since the Beta 1 release, and I don't think there was a default before that with the CTPs. I remember having to put it for every UpdatePanel. A large number of the posts I have come across about full postbacks have been from people who have not used the previous releases or are having validator issues. I have seen a few posts where people thought ajax worked differently, for example mistaking full postbacks with going to a whole new page. There are a lot of people that seem to have validator issues because they just are reading the conversion guide, not the blogs or other information about the validator change in the RTM, so they don't know they have a problem with validators.

No comments:

Post a Comment