Talk:ASP.NET
From Wikipedia, the free encyclopedia
[edit] asp.net
is ASP.net a compiled language?
- Yes --WayneMokane 07:47, 19 Dec 2004 (UTC)
- Yes and No. ASP.NET must be compiled by the server (aka IIS) to a .NET common language runtime, from which it will be interpreted by the server machine. But you don´t need to compile an ASP.NET file to run it on the server, the server does it for you. In this case, the answer is No. --Cedric.graebin 23:42, 12 July 2005 (UTC)
- To expand on that, the assembly that is created from your pages is indeed compiled to MSIL, however, the JIT then kicks in during runtime and the corresponding machine code is cached and used on the next invocation.
- NO -- The ASP.NET Portion is not compiled, but interpreted by the IIS web server. The parts that are compiled are written in a compilable language such as C# or VB.NET. These parts of the application are compiled on the server.
-
- I beg to differ. Check your %WINDIR%\Microsoft.NET\Framework\%DOT_NET_VERSION%\Temporary ASP.NET Files folder. You'll see the end-result of the "ASP.NET Portion" translated to code (C# in may case) as well as the DLL that was generated. The end result is a compiled page, even if you don't do code-behind. - Chris 00:00, 16 March 2006 (UTC)
- First, ASP.NET is not a language. Second, YES, all parts that made up an ASP.NET application are compiled, including plain-text .aspx files (they are compiled as the first request come into a .NET assembly ("dll") which is stored somewhere in a temporary folder). —The preceding unsigned comment was added by 62.168.95.194 (talk • contribs) .
This "article" is absolutely pure Microsoft marketing hype. Where is the balance that an encyclopedia is supposed to bring to a subject? I suspect the person who wrote it makes their living promoting Microsoft products. Microsoft is well know for “planting” people and marketing articles like this on the web.
- I completely agree. I just entered the discussion page to see if im the only one feeling "uncomfortable" with this article- esp. the "common misconceptions" section... unfortunately i dont know the subject material enough to validate. plz if someone feels the same, maybe a neutrality warning is in place here... —Preceding unsigned comment added by 88.152.170.12 (talk) 21:19, August 26, 2007 (UTC)
Would asking for full disclosure about the author be asking too much? 70.162.248.198 02:40, 8 December 2006 (UTC) JustBoo
[edit] Minimo?
What does this mean?
- Usually locks to Microsoft as server vendor, as free/open-source alternative Minimo can't handle all functionality
All I find for Minimo is a Mozilla-based browser, which isn't a server... —Josh Lee 03:08, August 18, 2005 (UTC)
I think that it must be referring to the Mono development platform, an open-source .NET implementation interface that can run ASP.NET pages. Cedric S. Graebin 15:13, 5 July 2006 (UTC)
[edit] "Valid" XHTML?
Are you kidding? If it sends standard XHTML per default, MSIE support is broken -- MSIE 6.0 and earlier don't support XHTML 1.0 because they don't understand the MIME type and parse it as XML/HTML tagsoup. I don't think Microsoft would be that stupid.
If they send "valid" XHTML 1.0 (as in "source code validates", not as in "standards compliant") with a HTML MIME type, they are effectively violating the standard no less than if they continued to send proprietary HTML instead. -- 134.95.141.104 11:37, 19 January 2006 (UTC) (Ashmodai)
- Please, tell me exactly WHERE in the XHTML standard is written down which MIME to use? —The preceding unsigned comment was added by 62.168.95.194 (talk • contribs) .
- Look in the abstract section of http://www.w3.org/TR/2002/NOTE-xhtml-media-types-20020801/. However, that says that it SHOULD use application/xhtml+xml not MUST. A more definite violation is that all JavaScript blocks that ASP.NET internally generates are improperly escaped and won't work under true XHTML clients. Developer38 22:34, 11 May 2006 (UTC)
ASP.NET does NOT serve XHTML properly, the javascript blocks are commented, if served properly these will be commented out (because it's xml) and no javascript can be used. Please note that if marked as cdata this blocks work just fine. It's thesame for the inline css blocks. You can test if your browser is using xhtml properly by not closing a tag for example. If you are serving xhtml properly the browser will give an error, if served incorrectly it will display the page. See http://www.liquid-internet.co.uk/content/dynamic/pages/series1article1.aspx for some more info. After a lot of work i was able to get ASP.NET pages served as 100% correct xhtml, but it wasn't easy. IE not supporting xhtml by mimetype made it a lot more work. i think the ASP.NET team did not serve proper xhtml because IE7 does not support it out of the box (it does have a full blown working xhtml renderer, which does even support mathml). Why IE7 does not support xhtml as it should is totally unclear to me, it is fully implemented but IE does not listen to the mimetype. Should something about this not be added to the critisism section?
[edit] "comprised" and "composed"
Warrens, you're correct in your definitions of comprise and compose and I'm not arguing using "comprise". However, the original text ("composed of") was correct. "comprised of" *is* incorrect. If you insist on using "comprise" (when the original is fine), use "comprises", not "comprised of". - Chris 20:32, 16 March 2006 (UTC)
Correct, but the language is changing. So many people say "comprised of" that it's becoming acceptable. Personally I find it grates, but that's a sign one is growing old! ;-)
84.9.71.116 07:49, 30 April 2006 (UTC)
[edit] Microsoft promotion?
"The numerous .NET controls, classes and tools can cut down on development time by providing a rich set of features for common programming tasks" -- sounds straight out of some Microsoft marketing blurb. A bit more neutrality please and more mentions of competing technologies. Not all readers are fans of the wondrous M$.
84.9.71.116 07:49, 30 April 2006 (UTC)
- The Wikipedia article on ASP.NET is not an appropriate place for a discussion about competing technologies, any more than the article on PHP or Ruby on Rails are. Warrens 08:13, 30 April 2006 (UTC)
- I agree. It's not just that it's highly pro-MSFT, with all of the benefits listed ( and no context about how important they might be ) - it's also tiresome to read. I'm doing my part to improve the article, as a person who programs against ASP.NET every day. My goal is to bring a more neutral point of view, but also to make the content in this article more useful. As such, I'll be adding an article called Criticisms or Gotchas or something to that effect, of common mistakes or problems and how to deal with them. This could be seen as anti-MSFT ( which I'm not, since I choose to work with their technology ) but I'm doing it to make the page useful to ASP.NET users, not marketing people. DigitalEnthusiast 20:34, 14 December 2006 (UTC)
[edit] ASP.NET 2.0 does not generate valid XHTML
This article is inaccurate in saying that "in version 2.0, all controls generate valid HTML 4.0, XHTML 1.0 (the default), or XHTML 1.1 output". The XHTML generated is not valid even in version 2.0. For example, all generated JavaScript is wrapped in HTML/XML comments (<!-- -->) rather than XHTML CDATA blocks. This will pass the W3C validation tools, but the JavaScript code just won't work.Developer38 22:39, 11 May 2006 (UTC)
- If that's the case, there should be a good, citable source that supports that claim. Citing such sources helps prevent reversions of such claims. The Rod (☎ Smith) 00:16, 4 May 2006 (UTC)
- You can test this out for yourself. Create a simple ASP.NET page with one button and look at the generated source. You will see this error which Wikipedia lists as a common error on the XHTML page. I've seen other blogs point this out and I can prove it with the software. What exactly constitutes a valid citable source?
Developer38 18:54, 10 May 2006 (UTC)
- This guy says what I said. Is this a citable source? http://lachy.id.au/log/2005/05/script-comments
Developer38 19:12, 10 May 2006 (UTC)
-
- Wikipedia requires reliable, published sources to back up what's written in the articles. That you or I can fire up Visual Studio and recreate this situation (or are even so much as expected to in order to confirm anything written in an article) isn't good enough. This is a core tenet of Wikipedia:Verifiability. Warrens 02:06, 12 May 2006 (UTC)
-
- Even if blogs were valid sources, the one cited above does not say that the output is invalid XHTML. It merely discusses how the style of the XHTML causes problems in the way various UA's treat scripts or expect scripts to be treated. Neither does the "XHTML" article here say that the output of my ASP.NET page is not well-formed. The Rod (☎ Smith) 06:07, 12 May 2006 (UTC)
-
- I'd assume that output from a ASP.net page built using MS delivered components with a DOCTYPE specifying XHTML that *fails* the W3C validation processors would count as a verifiable source. So, if anyone can produce such a page... AnimalFriend 20:23, 7 September 2006 (UTC)
andyf says: It is wrong to speak in terms of ASP.NET producing or not producing valid XHTML. It's a design framework and developers can use it to write compliant XHTML, as they can write garbage and stick an XHTML DOCTYPE on the top. In the latter case the framework cannot magically render it as valid XHTML and it is not logical to extrapolate that situation to a general claim of non-compliance. Writing valid XHTML is a skill of the developer, not a shortcoming of the framework —Preceding unsigned comment added by 217.37.94.241 (talk) 15:01, 18 April 2008 (UTC)
[edit] Comparison to other platforms
The comparisons section is either misnamed, or has wrong content in it. These are criticisms of asp.net, no other platforms are mentioned. Further, these are criticisms of some of the asp.net controls, not the asp.net platform itself. Gaijin42 01:24, 10 August 2006 (UTC)
- How about we rename the section to "Criticism of stock control rendering"? Is there a better phrasing? Rod (A. Smith) 20:58, 10 August 2006 (UTC)
- Gaijin42 is right, the section should be merged with the preceeding "Advantages over ASP", since it only discusses how ASP.NET varies from ASP.old. AnimalFriend 10:45, 2 September 2006 (UTC)
[edit] Wikipedia Defines What Microsoft Won't
Once again I am astounded that I can find definitions and relationships of and between Microsoft technologies that are absent (or present who knows where mixed in with who knows what) from Microsoft's own downscale, deprecated, paper and ink documentation. Yay, Wikipedia.
- Wikipedia is open to everybody to contribute. Please feel free to do so. -- Szvest 18:46, 21 August 2006 (UTC) User:FayssalF/Sign
[edit] merge ASP master pages into this article
ASP master pages should be merged into this article -- timdew (Talk) 13:54, 9 December 2006 (UTC)
- Strong Disagree Are you crazy? Master pages are a part of ASP.NET, but hardly the same thing. In fact, many, probably most, ASP.NET developers never use master pages. ( That seems enough of a reason to keep the articles sperated! ) This suggestion is a lot like the idea of merging the articles on USA and Wyoming - B is a part of A, but A is not B. —The preceding unsigned comment was added by DigitalEnthusiast (talk • contribs) 18:37, 14 December 2006 (UTC).
- you made my point and never realised, that "... many, probably most, ASP.NET developers never use ASP master pages" and therefore ASP master pages doesn't warrant a page of it's own. please try not to be rude in your reply, i'm not crazy. -- timdew (Talk) 19:11, 14 December 2006 (UTC)
- Sorry if that sounded rude - wasn't my intent. I just don't think "strongly disagree" conveyed my feelings strongly enough. While I see your point that master pages could be notable enough to mention but not for their own article, there are any number of developers who do use them ( myself included ). To many it's as if "master pages" didn't exist, even aren't a part of ASP.NET, however, they are a subset, and only of version 2.0, so I really think it makes sense to keep the two articles seperate. Also, I'm rewriting much of the ASP.NET page, and while I'm removing some content ( that's either confusing, or simply untrue ) it will be longer when I'm finished. If necessary, I'll do the same for the Master Pages article, and point out a lot of the specific issues their use brings up. ( PS - Obviously you're not crazy if you can understand this highly technical stuff. ) DigitalEnthusiast 20:25, 14 December 2006 (UTC)
- I also disagree with the merge suggestion ASP master pages are a large enough part of ASP.NET that it does indeed warrant a separate article. That said, the current article needs to be significantly expanded. I will try to work on it, but no guarantees! (P.S. - Thank you, DigitalEnthusiast, for your contributions; I am new to Wikipedia and appreciate your corrections to my recent updates) --Jimmytharpe 17:04, 19 January 2007 (UTC)
- you made my point and never realised, that "... many, probably most, ASP.NET developers never use ASP master pages" and therefore ASP master pages doesn't warrant a page of it's own. please try not to be rude in your reply, i'm not crazy. -- timdew (Talk) 19:11, 14 December 2006 (UTC)
- Strong Disagree. Master pages are a very important part of ASP.NET, there's a whole lot to be said about them (as you can see in this page), and they're a recent development, as opposed to a feature that always has been native to ASP.NET. Thomasmallen 15:08, 31 January 2007 (UTC)
red riya
- Disagree I agree that master pages are a part of ASP.NET, but they existed through 2 releases (1.0 and 1.1) without being implemented. Master pages are an important concept in and of themselves. The concept of template-based web-programming was changed from a simple server-side include model to an object oriented approach. //BankingBum 06:24, 24 February 2007 (UTC) $$
- Disagree For reasons cited above, and because they're only part of ASP.NET 2.0, not all versions. —The preceding unsigned comment was added by 68.144.124.143 (talk) 16:34, 16 March 2007 (UTC).
[edit] "Unhandled exceptions force the ASP.NET worker processes to shut down"
Maybe I'm missing something here, but I don't understand the relevance of this statement, or at least how it can be used as a criticism of ASP.NET. Say have this code in my Page_Load, which will cause a runtime division by zero exception:
int a = 0; int b = 1/a;
If I don't catch this exception myself then the ASP.NET runtime will catch it and show an error page. The application will not be restarted and sessions will not be lost. All exceptions are eventually caught by the runtime, meaning that there is really no such thing as an "uncaught exception" in ASP.NET (at least in theory).
If somehow an exception was thrown that was not caught by the ASP.NET runtime, then by definition the process must be terminated, as there is no way to continue after this point. This is the same with any application on any platform, so I don't see how this can be a criticism of ASP.NET. If we assume that there could be an exception that isn't caught by the ASP.NET runtime, then surely the criticism should be "ASP.NET contains a bug that prevents it from catching all exceptions".
Googling for information on this yields nothing. I'm sure my understanding of the way these things work is lacking, however, so maybe someone can enlighten me. Straussian 00:19, 6 February 2007 (UTC)
- You are correct - that sentence is wrong. However, are you sure about session states? I haven't tested it, but I thought that session states get lost when unhandled exception occurs. DLX 13:44, 7 February 2007 (UTC)
-
- DLX asks a good question. This really depends on the severity of the error and the configuration of the session state. If the ASP.NET application uses an out of processes session option (such as the ASP.NET session server or SQL Server session), it doesn't matter what the severity of the error is. The session state will stay alive. In the case of an in-proc session option (the current default in ASP.NET), a severe error will kill the worker process and therefor, the session state. Going to the root of the statement, most unhandled exceptions do NOT crash the worker process and are caught by the default ASP.NET generic exception handler (which produces the "yellow screen of death"). All of this said, its hardly a practical criticism to say that "Unhandled exceptions force the ASP.NET worker processes to shut down" since any application that doesn't handle exceptions cause a process exit. //BankingBum 06:32, 24 February 2007 (UTC) $$
- (updated) I've modified the criticisms section and added a bit of accuracy and grammatical changes. The criticism was written a little more like a rant than an encyclopedic criticism. //BankingBum 06:55, 24 February 2007 (UTC) $$
No, uncaught exceptions does not cause the ASP.NET worker process to shut down. Every single exception is caught by ASP.NET which will then display the error page. Hence, no exception can cause the session state to be lost, even if that session state is kept in-proc. It is true that some conditions will cause IIS to recycle the worker process and hence throw away in-proc session state. E.g. if a worker process consumes an abundant amount of memory (60% of available) it will be recycled to proactively prevent a memory leaking site from disrupting services for other sites.
- Actually, the current ASP.Net (2.0) catches and handles all exceptions in the Page Requests process via HTTPException processing and prevent the app pool from recycling. Background threads, however, are not handled by the primary HTTPException process. Examples of background threads include call-backs by AJAX requests. With more and more asynchronous calls being implemented, you will see more of this type of recycle. See this KB for details: [1] Christopher G Lewis (talk) 18:12, 30 January 2008 (UTC)
I have deleted that "criticism" as it was fraught with errors as discussed above. What was left was hardly a criticism. If anyone would like to reintroduce this criticism, please quote sources. —Preceding unsigned comment added by 212.242.89.162 (talk) 04:23, 18 February 2008 (UTC)
[edit] Code Behind and/or Code Beside
I was thinking shouldn't it be mentioned somewhere that ASP.NET 2.0 now uses Code Beside instead of Code Behind files. While not a huge significantly life altering thing it does change things a bit. I would add this but Don't know where would be appropriate.percent20 11:55, 16 May 2007 (UTC)
When an exceptions occurs in the main thread (example page_load event), the exception is thrown up and can be handled in the global.asax event for example. However, even if not handled, the application does not shut down. However, if a separate background thread throws an unhandled exception the application will shut down in asp.net 2.0 (not in earlier versions). This should normally be prevented by the programmer (prevent unhandled exceptions in background worker thread, or catch add an implementation IHttpModule and catch such exceptions in a special event) —Preceding unsigned comment added by 84.73.50.235 (talk) 21:14, 26 September 2007 (UTC)
[edit] Pro-MSFT
Pro-MSFT, article is not neutral discussion based on programmer experience
This article definitely seems to have been written by the vendor (MSFT) in a biased manner. Even the criticisms section does not really contain criticisms. If you scan the blogs of real programmers out there, you'll find that the majority of them are having major issues with the ASP.Net technology. As these are the realities facing most people trying to actually use the technology, they definitely belong in this article. Some of these issues include:
1. Poorly written auto-generated HTML coming from the Microsoft drag and drop web server controls.
2. Non-workability of the "web page as a windows app" paradigm that the development environment (VS) forces on the developer. Only a very small minority of web sites (1%?) actually behave similar to a traditional windows app. For these, the .Net model of Postback and the entire "web forms" idea may work. However, most web pages are interactive hyper text mark-up. Most user skip from one page to another all the time, and do not expect every page to behave as an "application".
Comment- ASP.NET 2 no longer pushes you down the "windows app" route (sometimes loosely referred to as the Single Document Model). The whole point of Master Pages is to allow multi-page apps more akin to trad. ASP3, but with the benefits of a sophisticated template to encourage consistancy of look/function. Similarly the ability to post to different pages supports this. You can have SDM for intranet apps, multi page for web sites. You can do whichever you like...
3. Many top programmers are writing on their blogs how to work around or "exorcize" the code-generation tools in VS that try to "help" us. Also, many developers have criticized ASP.Net for decreasing productivitiy as it is aimed at a certain class of web sites that represent a minority of actual projects going on. Thus, for the average web site it is considered by many to be an overkill technology that takes more time to develop in to get the same result as compared to classic ASP.
You can of course, with usually very little modification, run ASP3 pages under the .NET framework. There are significant advantages in doing so, so if you reckon you can write ASP3 faster than ASP.NET then there is still a case for running it under the .NET framework. There is no real downside to doing this.
4. Classic ASP already offered object oriented technology through the 3 tier model: front-end scripting, middle-tier compiled components and data-tier data storage. ASP.Net attempts to bring OO to a front-end hyper-text textual formatting language. This presents numerous challenges as presentation and reading a textual document in general is very subject to subtle needs of designers and developers, and is nearly impossible to encapsulate in an OO environment without constraining developers to a rigid agenda in terms of what the final presentation layer will look like. Many developers are compaining aboutt he straight jacket ASP.Net puts them in when it comes to delivering customer satisfaction and trying to tweak the presentation layer to eactly where their customer and users want it.
ASP3 was not OO by any measure imaginable. A 3 tier model does not make it OO. It fails on Polymorphism Inheritance and Encapsulation, the three tennants of an OO language.
A fair article should discuss these challenges currently faced by thousands of ASP.Net developers, work-arounds, and any efforts by MS to fix these issues.—Preceding unsigned comment added by 24.16.65.75 (talk • contribs)
- Care to give reliable sources about the criticism? Note that blogs are not that. -- Sander Säde 17:16, 29 September 2007 (UTC)
- The "Drag and Drop" functionality to which you are referring is actually not a part of ASP.NET at all. It is a part of Visual Studio and should be added to the criticisms section of that article. -- Benrick 18:04, 26 October 2007 (UTC)
[edit] Common Misconceptions
That whole area reads like some kind of ad. The format of "setence - FACT - reason" is the sort of thing I expect to see in advertisement. While I'm sure they may be true, it doesn't seem like it belongs here.----66.92.12.26 10:28, 14 October 2007 (UTC)
- Per WP:V, I've removed the whole section. It doesn't meet Wikipedia's verifiability or neutral point of view requirements. -/- Warren 20:41, 27 October 2007 (UTC)
[edit] Unauthorized account making
This site will make an account on some PCs called "ASP.NET Machine A...
" (Limited account, Password protected). Microsoft has acknowledged this. Shouldn't we, too?— Supuhstar * § —Preceding comment was added at 03:07, 20 December 2007 (UTC)
[edit] Proposed merger
A new article, ASP.NET Web User Controls, contains a small amount of information relating to ASP.NET and I propose that, rather than keeping the separate article, its useful content be merged into the “Other files” section of this article. —Travistalk 22:39, 23 January 2008 (UTC)
- There were several such articles that contained a small amount of information. I've merged them all into this article. -/- Warren 18:54, 20 April 2008 (UTC)
[edit] Inline code
Can someone please cite a source for the comment on inline code: "but this practice is generally frowned upon by Microsoft except for the purposes of data binding since it requires more calls when rendering the page."? This is the first I've heard of it, there are no exceptions, the only reason that inline code is used for backwards compatibility with ASP and it makes tutorials shorter to explain. —Preceding unsigned comment added by 82.44.98.49 (talk) 23:11, 6 February 2008 (UTC)
[edit] link spam
In an attempt to combat link spam, I've added the substituted template {{subst:NoMoreLinks}} to the external links section as per Wikipedia:Spam#Tagging_articles_prone_to_spam Christopher G Lewis (talk) 20:56, 15 February 2008 (UTC)
[edit] Sample ASPX page
I like the sample ASPX page, but does anyone know if ASP.Net is a valid MediaWiki SOURCE tag? I've tried <source lang="html4strict"> and <source lang="csharp">, but neither really work... Christopher G Lewis (talk) 19:07, 1 March 2008 (UTC)
- I think no, Media wiki works with pure html. Or maybe i didnt understand your question. A M M A R 02:24, 2 March 2008 (UTC)