ASP.NET inline code - architectural question
-
Hi to all ! I'd like to understand, where in the resulting ..._aspx class goes inline code, found on the page inside code brackets. I want to create the dynamic page, where the existence of controls is managed by parameters, say, from querystring. Is the following the best way to do it: <% if (Request.QueryString.Get("par")=="2"){ %> <% } %> Or I have to get rid of designer and create the page programmaticaly in whole? Thanks in advance. Regards, Gennady
-
Hi to all ! I'd like to understand, where in the resulting ..._aspx class goes inline code, found on the page inside code brackets. I want to create the dynamic page, where the existence of controls is managed by parameters, say, from querystring. Is the following the best way to do it: <% if (Request.QueryString.Get("par")=="2"){ %> <% } %> Or I have to get rid of designer and create the page programmaticaly in whole? Thanks in advance. Regards, Gennady
You could do it that way, but I would suggest looking at the Placeholder control and something to use to hide or show your controls. On you page load even you can check the query string and show or hide the correct placeholders that have the controls in them. Hope that helps. Ben
-
You could do it that way, but I would suggest looking at the Placeholder control and something to use to hide or show your controls. On you page load even you can check the query string and show or hide the correct placeholders that have the controls in them. Hope that helps. Ben
Hi ! Thank you for your reply. I'll look at this control (I'm new enough in ASP.NET). But my question was not exactly "how to do", but rather "how it works". The thing is that I have to create the new .NET version of the existing site that is on high demand (about a million visitors per month). So performance is THE issue. I'd like not to squander resources on creating hidden controls and emitting the javascript code that will never work. That's why I'm trying to understand what is going on under the hood. Thanks once more. Regards, Gennady
-
Hi ! Thank you for your reply. I'll look at this control (I'm new enough in ASP.NET). But my question was not exactly "how to do", but rather "how it works". The thing is that I have to create the new .NET version of the existing site that is on high demand (about a million visitors per month). So performance is THE issue. I'd like not to squander resources on creating hidden controls and emitting the javascript code that will never work. That's why I'm trying to understand what is going on under the hood. Thanks once more. Regards, Gennady
-
Hi to all ! I'd like to understand, where in the resulting ..._aspx class goes inline code, found on the page inside code brackets. I want to create the dynamic page, where the existence of controls is managed by parameters, say, from querystring. Is the following the best way to do it: <% if (Request.QueryString.Get("par")=="2"){ %> <% } %> Or I have to get rid of designer and create the page programmaticaly in whole? Thanks in advance. Regards, Gennady
For your simple example panels would be good. If you're doing anything really complex though you could take a look at an article I wrote about handling views here: http://www.codeproject.com/useritems/ViewManagerTutorial.asp Just one more option. I'm honestly not sure how much of a performance impact this would have versus panels. Because of the simplicity of the class though I would have to lean towards that it may be a leaner solution. If anyone has any discrete data to the contrary please correct me! -Justin
-
With the placeholder control, when it is set to false, that html is not rendered in the page. I don't think you would see any performance issue. The code that you had for your example could have some performace issues since it is parsed. Ben
Hi ! So, if I've understand right, the inline code goes to the Render method of the resulting class? As for Placeholder control, I have to learn it in comparison to Panel or simply adding controls to the page collection in the Load event handler. From the glance I cannot see great difference between these three options for my case. May be in the event propagation model? Thanks. Regards, Gennady
-
For your simple example panels would be good. If you're doing anything really complex though you could take a look at an article I wrote about handling views here: http://www.codeproject.com/useritems/ViewManagerTutorial.asp Just one more option. I'm honestly not sure how much of a performance impact this would have versus panels. Because of the simplicity of the class though I would have to lean towards that it may be a leaner solution. If anyone has any discrete data to the contrary please correct me! -Justin
Hi ! Thank your for reply. Concerning viewmanager, and also multiview and view controls - suppose I can use them, say, to implement the tabs. But not in the case in question. I think, it's not a good idea - generate 100 views per user request to always show him only one. Or I didn't understand something? To understand what type of site I mean - two links to the same site: emap/English[^] gj[^] Thanks. Regards, Gennady
-
Hi ! Thank your for reply. Concerning viewmanager, and also multiview and view controls - suppose I can use them, say, to implement the tabs. But not in the case in question. I think, it's not a good idea - generate 100 views per user request to always show him only one. Or I didn't understand something? To understand what type of site I mean - two links to the same site: emap/English[^] gj[^] Thanks. Regards, Gennady
Ahh I see what you're going for. Honestly in that situation I would use the view manager. The reason for that is that the purpose of the class is always to show just one view. The ViewManager only stores references to the controls which I believe should be pretty inexpensive and the time it would take to initialize it should be trivial. Also when you have such a complicated view it seems like it would be nice to be able to initialize it with a single call. -Justin
-
Hi ! So, if I've understand right, the inline code goes to the Render method of the resulting class? As for Placeholder control, I have to learn it in comparison to Panel or simply adding controls to the page collection in the Load event handler. From the glance I cannot see great difference between these three options for my case. May be in the event propagation model? Thanks. Regards, Gennady
I don't think that is true. The panel and the placeholder control are similar. The difference is that the panel control can still take up some space in the html. The placeholder control will not. The example code you used has the <% these tags are parsed later and take more time. Since speed is a concern I think you would be much better off using the placeholder control. Ben
-
I don't think that is true. The panel and the placeholder control are similar. The difference is that the panel control can still take up some space in the html. The placeholder control will not. The example code you used has the <% these tags are parsed later and take more time. Since speed is a concern I think you would be much better off using the placeholder control. Ben
kubben wrote:
these tags are parsed later and take more time
Thanks, Ben ! This is exactly what I'd like to understand - when and where. But think, even the placeholder will not be a good alternative. More I think about it - more I incline to the idea, that the best decision in my case would be to write the kind of page generator, that will create "static" aspx pages (about 100) on the base of page template and type definitions from the DB. This has to provide the performance benefit, yet supporting the desired level of flexibility and managability. I hope ... Thanks. Regards, Gennady