views:

36

answers:

2

I am looking for more info on these kinds of HTTP Parameters that are found in ASP.NET web applications:

ctl00$ContentPlaceHolder1$GenericWebUserControl$StartDate5 ctl00$ContentPlaceHolder1$_rptStateLabels$ctl00$_rptFacilities$ctl01$_btnSelectFacilit.x

I want to understand the logic behind these input element names: How are they generated? How does a given name like this map to some given HTML or web-application structure? What is the significance of the "common" parts of the parameter names, like the "ctl###" bits (or any other things like that which I haven't noticed a pattern in)? How many of those should I expect to see?

I am looking at this from someone who wants to understand the HTTP requests that are being sent to such an application - i.e. when can I expect to see such-and-such HTTP parameter versus something else, given some structure of the site.

I haven't found this in ASP.NET docs, though I am not really familiar with them - any pointers are appreciated - again, not wanting to know as a ASP.NET programmer, which I'm not (i.e. I don't want to know how to code ASP.NET with this kind of thing), rather as someone analyzing the web traffic at the HTTP level and wanting to know the significance of these parameters to the web-application and how to "parse" them i.e. understand their structure, not as a machine, but as a human (which I am).

A: 

This loos like the element ID assigned by the framework to server web/html controls. It is really not related to HTTP parameters.

The '$' is generally the delimiter between parent/child controls' ID.

o.k.w
Hi o.k.w - thanks for answering. How is it "really not related to HTTP parameters"? These are the names of the HTTP parameters that are apparently generated by the framework - I know for a fact that they are indeed HTTP parameters. My question is what is the structure/logic of these names, and what patterns can be gleaned from them given knowledge of how the framework generates them. Thanks –
edan
A: 

These look like ASP.Net-generated control names, not ASP.Net MVC control names.

In ASP.Net MVC, you have control over them because you have to consume them directly whereas in ASP.Net you're divorced from the naming conventions and instead consume events that they generate on postback (or talk to the button/whatever controls to access their values).

I'm not really clear what you're looking to gain from being able to parse the structure of the names when ASP.Net already does that for you.

48klocs
I am trying to parse the structure because I am trying to analyze the web application as a "black box" at the HTTP level. I want to know what HTTP parameters are being sent to the application. When I see all of these names, it's obvious there is some kind of structure and meaning to the names, but it's not clear enough what the actual structure is. Is there any documentation on the ASP.Net-generated control names like these? For instance if I have 2 of these long names, one with "ctl102" and another with "ctl103" in the middle, but otherwise the same - what is the relation between them?
edan