1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
|
* ASP.NET
ASP.NET support is divided in two pieces:
<ul>
* Web Forms (Web Applications infrastructure).
* Web Services (the SOAP-based rpc system).
</ul>
There is work underway for both systems. The Web Forms
support is more advanced at this point, and various ".aspx"
programs can be run using the Mono runtime (embedded into
either the XSP server or the mod_mono Apache module).
We are now working bug fixing and adding missing features
after making the whole pipeline compatible with MS.
Tim started work on the Web Services. Although we have a
SoapFormatter as part of the remoting infrastructure already
(contributed by Jesus), most people will be using the ASP.NET
Web Services support. Work for the supporting class libraries
just started recently.
** HttpRuntime
Patrik has authored most of the HttpRuntime support (both on
the System.Web and on the foundation).
We are currently working on this.
** XSP
This is where initial development of the .aspx/.ascx/.asax compiler
to C# took place. That compiler is now integrated in System.Web classes
mostly under System.Web.Compilation namespace.
We added a new web server that works with mono and MS runtime and is
being used to debug our classes. It resides in xsp/server. A couple of
classes of this new server can be reused/extended to make an apache
module/cgi using mono (MonoWorkerRequest and MonoApplicationHost).
There is also a bunch of .aspx pages to test the server along with
a few user controls under xsp/test.
You can check it out from CVS and run 'make install' to test it.
** Controls
A lot of work has been put in the various classes that
implement the controls (UI.HtmlControls and UI.WebControls),
but they have been coded mostly in the dark, and without being
able to test them in real life: Gaurav and Leen worked very
hard on this namespace.
We can now render all HtmlControls and almost all WebControls.
DataGrid and DataList controls are being finished by Gaurav.
Xml control needs some work on System.Xml related to XSL.
** Extending ASP.NET
Currently you have to reference in your ASP.NET the control
and all of its properties, which works fine if you have a GUI
designer, but is harder for people used to develop using text
editors.
Since we have a parser, we could extend this parser to allow
people to still use ASP.NET controls, using a simpler syntax.
For example people doing blogs and editing their templates
over the web probably do not want to use direct ASP.NET but a
wrapper around it.
* Web Forms: The pieces (historical)
There are a couple of components to the puzzle:
<ul>
* .aspx page parser (converts .aspx to C# code).
* System.Web.HttpRuntime support.
* Web controls (System.Web.UI.HtmlControls and
System.Web.UI.WebControls).
* Underlying infrastructure for the controls (System.Web.UI).
* HttpRuntime.ProcessRequest is the core of the ASP.NET
implementation.
</ul>
Gonzalo has been working on an ASP.NET parser that takes .aspx
files and generated the code required to run them (the code lives in
module `xsp' along with a little web server for testing).
Most of the runtime support was written by Patrik Torstensson
(now at Intel). This was interesting, because in order to implement
some of its features, Patrik had to go into the runtime/JIT engine and
he spent a few weeks doing work there.
The classes for running ASP.NET are being actively written.
Gaurav, Leen and Patrik worked in the core of the classes
required to run ASP.NET web application as well as a small
embeddable web server.
Duncan got our System.Web assembly to compile.
** How to Help
Testing and fixing HtmlControls, WebControls and validators is an
easy way to help.
In the CVS module XSP you can find a small web server used for
testing and a directory containing sample aspx pages.
You have some documentation under doc directory and in the README
file of each directory. They explain how to test our System.Web.
Testing is really easy!
As the server also works with MS runtime, you can use it to check
what the expected results are.
|