2002-06-28 Martin Baulig <martin@gnome.org>
[mono.git] / web / asp-net
1 * ASP.NET
2
3         The classes for running ASP.NET are being actively written.
4         Gaurav, Leen and Patrik have been building the classes
5         required to run ASP.NET web application as well as a small
6         embeddable web server.
7
8         There are a couple of components to the puzzle:
9
10         <ul>
11                 * .aspx page parser (converts .aspx to C# code).
12         
13                 * System.Web.HttpRuntime support.
14         
15                 * Web controls (System.Web.UI.HtmlControls and
16                   System.Web.UI.WebControls).
17         
18                 * Underlying infrastructure for the controls (System.Web.UI).
19         
20                 * HttpRuntime.ProcessRequest is the core of the ASP.NET
21                   implementation.
22         </ul>
23
24
25         Gonzalo has been working on an ASP.NET parser that takes .aspx
26         files and generated the code required to run them (the code lives in
27         module `xsp' along with a little web server for testing).
28
29         Most of the runtime support was mostly written by Patrik Torstensson
30         (now at Intel).  This was interesting, because in order to implement
31         some of its features, Patrik had to go into the runtime/JIT engine and
32         he spent a few weeks doing work there.
33
34         Duncan got our System.Web assembly to compile.
35
36 ** HttpRuntime
37
38         Patrik has authored most of the HttpRuntime support (both on
39         the System.Web and on the foundation) but it is still not
40         ready to run.
41
42 ** XSP
43
44         Currently XSP provides the .aspx compiler to C#.  It would be
45         interesting to see if it makes sense to extend the ASP.NET
46         syntax to make it simpler to develop applications.
47
48         Gonzalo is in charge of the compiler.
49
50 ** Controls
51
52         A lot of work has been put in the various classes that
53         implement the controls (UI.HtmlControls and UI.WebControls),
54         but they have been coded mostly in the dark, and without being
55         able to test them in real life: Gaurav and Leen worked very
56         hard on this namespace, but needs to be finished.
57
58         We can now render all HtmlControls and some WebControls. Work is
59         ongoing to make all WebControls render HTML.
60
61 ** Extending ASP.NET
62
63         Currently you have to reference in your ASP.NET the control
64         and all of its properties, which works fine if you have a GUI
65         designer, but is harder for people used to develop using text
66         editors.
67
68         Since we have a parser, we could extend this parser to allow
69         people to still use ASP.NET controls, using a simpler syntax.
70         For example people doing blogs and editing their templates
71         over the web probably do not want to use direct ASP.NET but a
72         wrapper around it.
73
74 ** Roadmap
75
76         1. The Parser.
77
78         2. Get the parser to generate output compatible with ASP.NET.
79
80         3. Run the sample output with the real Microsoft runtime
81            but using our generated page.   
82
83         4. Run the sample with our classes with the .NET runtime.
84         <b>We are here</b>.
85
86         5. Finish HttpRuntime.
87         
88         6. Running our sample code with our classes with our runtime.
89
90 ** How to Help
91
92         Currently we are testing and fixing HtmlControls, WebControls and
93         validators.
94
95         In the CVS module XSP you can find the aspx to C# page parser,
96         a little web server used for testing and a directory containing
97         sample aspx pages.
98
99         You have some documentation under doc directory and in the README
100         file of each directory. They explain how to test our System.Web.
101         Testing is really easy!
102